Esempio n. 1
0
 public void SetTarget(Transform target)
 {
     this.target = target;
     state       = LightTargetState.Targeting;
     if (!target)
     {
         state = LightTargetState.Free;
         return;
     }
     lerpTime = 0;
     origin   = new Vector3(transform.position.x, transform.position.y, target.position.z);
 }
Esempio n. 2
0
        private void Update()
        {
            switch (state)
            {
            case LightTargetState.Following:
                transform.position = target.position;
                break;

            case LightTargetState.Targeting:
                if (lerpTime < 1)
                {
                    transform.position = Vector3.Lerp(origin, target.position, lerpTime);
                    lerpTime          += Time.deltaTime;
                }
                else
                {
                    transform.position = target.position;
                    state = LightTargetState.Following;
                }

                break;
            }
        }
Esempio n. 3
0
 public void Free()
 {
     state  = LightTargetState.Free;
     target = null;
 }