diff options
Diffstat (limited to 'Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs')
-rw-r--r-- | Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs b/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs index 1a990252..a9c50ac3 100644 --- a/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs +++ b/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs @@ -216,22 +216,20 @@ public class AnimatorLayerInfo public void OnCrossFade(string animState, float normalizedTransitionDuration, float normalizedTimeOffset, float normalizedTransitionTime ) { - m_CurrentState = animState; - m_Animator.CrossFade(animState.ToString(), normalizedTransitionDuration, layerIndex, normalizedTimeOffset, normalizedTransitionTime); - } - - public void OnPlay(string animState, float normalizedTime) + m_CurrentState = animState;
+ m_Animator.CrossFade(animState.ToString(), normalizedTransitionDuration, layerIndex, normalizedTimeOffset, normalizedTransitionTime);
+ m_TimelineEventProxy.ResetPrevAnimationData();
+ }
+
+ public void OnPlay(string animState, float normalizedTime) { m_CurrentState = animState; - m_Animator.Play(animState, layerIndex, normalizedTime); - } + m_Animator.Play(animState, layerIndex, normalizedTime); + m_TimelineEventProxy.ResetPrevAnimationData();
+ } } -// 控制动画播放、执行动作timeline(包括执行事件和碰撞盒) -// 每个layer同时只会有一个动画在播放,在执行transition时,current animation依然是 -// 这个动作,只有完全过渡完成后才会切到下一个动作 -// 当前是什么动作以ainmator的GetCurrentAnimatorStateInfo为准 [DisallowMultipleComponent] public class UnitAnimation : UnitComponent { |