summaryrefslogtreecommitdiff
path: root/Assets/Scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts')
-rw-r--r--Assets/Scripts/Props.meta8
-rw-r--r--Assets/Scripts/Scene.meta8
-rw-r--r--Assets/Scripts/Test 1/TestInput.cs17
-rw-r--r--Assets/Scripts/Unit/Component/PCAnimation.cs7
-rw-r--r--Assets/Scripts/Unit/Component/PCState.cs79
5 files changed, 59 insertions, 60 deletions
diff --git a/Assets/Scripts/Props.meta b/Assets/Scripts/Props.meta
deleted file mode 100644
index bb96602e..00000000
--- a/Assets/Scripts/Props.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: f299520ed9fcf4a45858ad4ef5a8d5d1
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scripts/Scene.meta b/Assets/Scripts/Scene.meta
deleted file mode 100644
index eb7a8716..00000000
--- a/Assets/Scripts/Scene.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: eaee2d0f48cff9b40baf0686a8105600
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scripts/Test 1/TestInput.cs b/Assets/Scripts/Test 1/TestInput.cs
index 72e0351b..1a43f108 100644
--- a/Assets/Scripts/Test 1/TestInput.cs
+++ b/Assets/Scripts/Test 1/TestInput.cs
@@ -8,23 +8,6 @@ public class TestInput : MonoBehaviour
private void Update()
{
InputManager.Instance.OnUpdate();
-
- //if(Input.GetKeyDown("j"))
- //{
- // InputManager.Instance.OnAttack();
- //}
- //if(Input.GetKeyDown("space"))
- //{
- // InputManager.Instance.OnJump();
- //}
- //if(Input.GetKeyDown("d"))
- //{
- // InputManager.Instance.OnMoveRight();
- //}
- //if(Input.GetKeyDown("a"))
- //{
- // InputManager.Instance.OnMoveLeft();
- //}
}
}
diff --git a/Assets/Scripts/Unit/Component/PCAnimation.cs b/Assets/Scripts/Unit/Component/PCAnimation.cs
index 3d88336d..878c9b7c 100644
--- a/Assets/Scripts/Unit/Component/PCAnimation.cs
+++ b/Assets/Scripts/Unit/Component/PCAnimation.cs
@@ -160,7 +160,12 @@ public class PCAnimation : UnitAnimation
#endif
}
- public void AnimAirDash()
+ public void AnimAttack(int id)
+ {
+ m_Animator.CrossFade("Attack" + id, 0.05f);
+ }
+
+ public void AnimAirDash()
{
if (layers[0].stateInfo.IsName("AirDash"))
{
diff --git a/Assets/Scripts/Unit/Component/PCState.cs b/Assets/Scripts/Unit/Component/PCState.cs
index 594ae131..1b01fad8 100644
--- a/Assets/Scripts/Unit/Component/PCState.cs
+++ b/Assets/Scripts/Unit/Component/PCState.cs
@@ -132,21 +132,21 @@ public class PCState : UnitState
IEnumerator Idle(IdleParam param)
{
- if (m_Owner.isInAir) // 浮空切换到landing
- {
- ChangeState(EUnitState.Landing, new LandingParam());
- }
- else // idle
- {
+ //if (m_Owner.isInAir) // 浮空切换到landing
+ //{
+ // ChangeState(EUnitState.Landing, new LandingParam());
+ //}
+ //else // idle
+ //{
m_Owner.SetYPosition(0);
m_Owner.pcAnimation.AnimIdle();
while (true)
{
- //if (Input.GetKeyDown("j"))
- //{
- // ChangeState(EUnitState.Attack, new SkillParam());
- //}
- if (Input.GetKeyDown("space"))
+ if (Input.GetKeyDown("j"))
+ {
+ ChangeState(EUnitState.Attack, new SkillParam());
+ }
+ if (Input.GetKeyDown("space"))
{
ChangeState(EUnitState.Jump, new JumpParam());
}
@@ -166,7 +166,7 @@ public class PCState : UnitState
}
yield return null;
}
- }
+ //}
}
void OnIdleExit(EUnitState nextState)
@@ -202,23 +202,50 @@ public class PCState : UnitState
m_Owner.pcAnimation.animator.ResetTrigger("ToMove");
}
- #endregion
-
- #region Attack
-
- IEnumerator Attack(SkillParam param)
- {
- while (true)
- {
-
-
- yield return null;
- }
- }
+ #endregion
+
+ #region Attack
+
+ IEnumerator Attack(SkillParam param)
+ {
+ const int total = 3;
+ int id = 0;
+ m_Owner.pcAnimation.AnimAttack(id);
+ yield return null;
+ while (true)
+ {
+ bool canCombo = m_Owner.pcAnimation.layers[0].IsToggleOpen(EAnimationToogle.Combo);
+ if (canCombo)
+ {
+ if (Input.GetKeyDown("j"))
+ {
+ if (Input.GetKey("a"))
+ {
+ TurnAround(false);
+ }
+ if (Input.GetKey("d"))
+ {
+ TurnAround(true);
+ }
+ ++id;
+ m_Owner.pcAnimation.AnimAttack(id);
+ yield return null; // 等待animator更新
+ yield return new WaitForTransitionDone(m_Owner.pcAnimation);
+ }
+ }
+
+ bool reachEnd = m_Owner.pcAnimation.layers[0].playbackNomralizedTime == 1;
+ if (reachEnd)
+ {
+ ChangeState(EUnitState.Idle, new IdleParam());
+ }
+
+ yield return null;
+ }
+ }
void OnAttackExit(EUnitState next)
{
-
}
#endregion