summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit/TimelineEventProxy.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-09-01 12:42:40 +0800
committerchai <chaifix@163.com>2021-09-01 12:42:40 +0800
commita93ea925263c23d5c08b5fca546eef81d6d4fec3 (patch)
tree596701fc44997ed8c0f1fc7608e4a2bfc5c69f56 /Assets/Scripts/Unit/TimelineEventProxy.cs
parentc8af1f2c55109092f2c305f2fac5ab240d46399b (diff)
*修改状态机状态切换
Diffstat (limited to 'Assets/Scripts/Unit/TimelineEventProxy.cs')
-rw-r--r--Assets/Scripts/Unit/TimelineEventProxy.cs15
1 files changed, 12 insertions, 3 deletions
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++)