using System.Collections; using System.Collections.Generic; using UnityEngine; /// /// 动画已经播放完毕 /// public class ConditionMotionAtEnd : ConditionBase { Animator m_Animator; int m_AnimationHash; public ConditionMotionAtEnd(Animator animator, int animationHash) : base() { m_Animator = animator; m_AnimationHash = animationHash; } public override bool Evaluate() { AnimatorStateInfo info = m_Animator.GetCurrentAnimatorStateInfo(0); if(info.shortNameHash == m_AnimationHash) { float t = info.normalizedTime; if (t >= 0.99f) return true; } return false; } }