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()); }
public static Monster_RotateTo GetInstance() { if (instance == null) { instance = new Monster_RotateTo(); } return(instance); }