iTween.ApplyShakePositionTargets C# (CSharp) Method

ApplyShakePositionTargets() private method

private ApplyShakePositionTargets ( ) : void
return void
    void ApplyShakePositionTargets()
    {
        preUpdate = transform.position;

        //reset rotation to prevent look interferences as object rotates and attempts to move with translate and record current rotation
        Vector3 currentRotation = new Vector3();

        if(tweenArguments.Contains("looktarget")){
            currentRotation = transform.eulerAngles;
            transform.eulerAngles = vector3s[3];
        }

        //impact:
        if (percentage==0) {
            transform.Translate(vector3s[1],space);
        }

        //reset:
        transform.position=vector3s[0];

        //generate:
        float diminishingControl = 1-percentage;
        vector3s[2].x= UnityEngine.Random.Range(-vector3s[1].x*diminishingControl, vector3s[1].x*diminishingControl);
        vector3s[2].y= UnityEngine.Random.Range(-vector3s[1].y*diminishingControl, vector3s[1].y*diminishingControl);
        vector3s[2].z= UnityEngine.Random.Range(-vector3s[1].z*diminishingControl, vector3s[1].z*diminishingControl);

        //apply:
        transform.Translate(vector3s[2],space);

        //reset rotation:
        if(tweenArguments.Contains("looktarget")){
            transform.eulerAngles = currentRotation;
        }

        //need physics?
        postUpdate=transform.position;
        if(physics){
            transform.position=preUpdate;
            rigidbody.MovePosition(postUpdate);
        }
    }
iTween