From a93ea925263c23d5c08b5fca546eef81d6d4fec3 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 1 Sep 2021 12:42:40 +0800 Subject: =?UTF-8?q?*=E4=BF=AE=E6=94=B9=E7=8A=B6=E6=80=81=E6=9C=BA=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E5=88=87=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/Unit/TimelineEventProxy.cs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'Assets/Scripts/Unit/TimelineEventProxy.cs') diff --git a/Assets/Scripts/Unit/TimelineEventProxy.cs b/Assets/Scripts/Unit/TimelineEventProxy.cs index 51d437fe..825cf5bf 100644 --- a/Assets/Scripts/Unit/TimelineEventProxy.cs +++ b/Assets/Scripts/Unit/TimelineEventProxy.cs @@ -50,11 +50,14 @@ public partial class TimelineEventProxy private UnitAnimation m_UnitAnimation { get { return m_Owner.unitAnimation; } } - public TimelineEventProxy(Transform root, UnitController owner = null) + private AnimationData m_PrevAnimationData; + + public TimelineEventProxy(Transform root, UnitController owner = null) { m_Root = root; m_Owner = owner; - } + m_PrevAnimationData = null; + } public static Type GetTypeByName(string name) { @@ -65,8 +68,14 @@ public partial class TimelineEventProxy public void ExecuteAnimationEvents(AnimationData animData, float animFrame) { if (animData == null) - return; + return; + int frame = (int)animFrame; + if (m_PrevAnimationData != animData) + { + m_PrevFrame = frame; + m_PrevAnimationData = animData; + } if (frame != m_PrevFrame) { for (int i = m_PrevFrame + 1; i <= frame; i++) -- cgit v1.1-26-g67d0