Пример #1
0
    public virtual void LookAt(Vector3 target, float speed)
    {
        if (mFSM.CurRule == Monster_Die.GetInstance())
        {
            return;
        }

        startRot = new Quaternion(transform.rotation.x,
                                  transform.rotation.y,
                                  transform.rotation.z,
                                  transform.rotation.w);
        targetRot = LookAtTarget(new Vector2(target.x, target.y));
        float a = Quaternion.Angle(startRot, targetRot);

        rotateto_totalTime = a / (speed + 0.1f);
        rotateto_Timer     = 0;
        //
        Animator animator = GetComponent <Animator>();

        if (animator != null)
        {
            animator.SetBool("attack", false);
        }
        //

        mFSM.SetState(Monster_RotateTo.GetInstance());
    }
Пример #2
0
 public static Monster_RotateTo GetInstance()
 {
     if (instance == null)
     {
         instance = new Monster_RotateTo();
     }
     return(instance);
 }