summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit/Action
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-08-03 19:33:43 +0800
committerchai <chaifix@163.com>2021-08-03 19:33:43 +0800
commit494d3f727786ff70753692d8de019d9600a007e1 (patch)
tree1b328a0d2d8943157903065ca3441b9f6485e3f9 /Assets/Scripts/Unit/Action
parent31666a451a74183b74557208812a9b47053c3f08 (diff)
*misc
Diffstat (limited to 'Assets/Scripts/Unit/Action')
-rw-r--r--Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs10
-rw-r--r--Assets/Scripts/Unit/Action/WaitForLanding.cs25
-rw-r--r--Assets/Scripts/Unit/Action/WaitForLanding.cs.meta11
-rw-r--r--Assets/Scripts/Unit/Action/WaitForTransitionDone.cs25
-rw-r--r--Assets/Scripts/Unit/Action/WaitForTransitionDone.cs.meta11
5 files changed, 78 insertions, 4 deletions
diff --git a/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs b/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs
index 3f5d20d4..ab755b64 100644
--- a/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs
+++ b/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs
@@ -6,17 +6,19 @@ using UnityEngine;
public class WaitForActionReachEnd : IEnumerator
{
UnitAnimation m_UnitAnimation;
-
- public WaitForActionReachEnd(UnitAnimation unitAnim)
+ UnitAnimation.ELayer m_Layer;
+
+ public WaitForActionReachEnd(UnitAnimation unitAnim, UnitAnimation.ELayer layer = UnitAnimation.ELayer.Basic)
{
m_UnitAnimation = unitAnim;
- }
+ m_Layer = layer;
+ }
public object Current => null;
public bool MoveNext()
{
- var stateInfo = m_UnitAnimation.stateInfo;
+ var stateInfo = m_UnitAnimation.layers[(int)m_Layer].stateInfo;
float normalTime = stateInfo.normalizedTime;
LogHelper.Log(stateInfo.loop.ToString());
return normalTime < 1f;
diff --git a/Assets/Scripts/Unit/Action/WaitForLanding.cs b/Assets/Scripts/Unit/Action/WaitForLanding.cs
new file mode 100644
index 00000000..5c9736ac
--- /dev/null
+++ b/Assets/Scripts/Unit/Action/WaitForLanding.cs
@@ -0,0 +1,25 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class WaitForLanding : IEnumerator
+{
+ UnitController controller;
+
+ public WaitForLanding(UnitController controller)
+ {
+ this.controller = controller;
+ }
+
+ public object Current => null;
+
+ public bool MoveNext()
+ {
+ return controller.isInAir;
+ }
+
+ public void Reset()
+ {
+ }
+}
diff --git a/Assets/Scripts/Unit/Action/WaitForLanding.cs.meta b/Assets/Scripts/Unit/Action/WaitForLanding.cs.meta
new file mode 100644
index 00000000..5098bc64
--- /dev/null
+++ b/Assets/Scripts/Unit/Action/WaitForLanding.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a8352853e3875584bb29bdcff4d9a586
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs b/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs
new file mode 100644
index 00000000..82f3e792
--- /dev/null
+++ b/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs
@@ -0,0 +1,25 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class WaitForTransitionDone : IEnumerator
+{
+ UnitAnimation m_UnitAnimation;
+
+ public WaitForTransitionDone(UnitAnimation unitAnim)
+ {
+ m_UnitAnimation = unitAnim;
+ }
+
+ public object Current => null;
+
+ public bool MoveNext()
+ {
+ return m_UnitAnimation.isInTransition;
+ }
+
+ public void Reset()
+ {
+ }
+}
diff --git a/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs.meta b/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs.meta
new file mode 100644
index 00000000..54f35f87
--- /dev/null
+++ b/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1729935affb1cc14c839545a43360dcb
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: