summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Avatar/Conditions/ConditionMotionAtEnd.cs
blob: 18d71e8686c320c7b66cf3eb564a73c1898e29a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// <summary>
/// 动画已经播放完毕
/// </summary>
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; 
    }
}