Эх сурвалжийг харах

角色在切换Fall状态时无法二段跳的bug

wulifu 1 жил өмнө
parent
commit
be9d27e40b

+ 5 - 5
ActionTowerDefense/Assets/Scripts/PlayerController.cs

@@ -908,11 +908,6 @@ public class PlayerController : MoveCharacter
                     ChangeState(CharacterState.Rush);
                     ChangeState(CharacterState.Rush);
                     break;
                     break;
                 }
                 }
-                if (rb.velocity.y <= 0)
-                {
-                    ChangeState(CharacterState.Fall);
-                    break;
-                }
                 if (btnJumpPress || cacheJumpTime > 0)
                 if (btnJumpPress || cacheJumpTime > 0)
                 {
                 {
                     if (airJumped < airJumpNumber && rb.velocity.y < canAirJumpSpeed)
                     if (airJumped < airJumpNumber && rb.velocity.y < canAirJumpSpeed)
@@ -924,6 +919,11 @@ public class PlayerController : MoveCharacter
                 }
                 }
                 CachedPlayerInput();
                 CachedPlayerInput();
                 rb.velocity = AirMove(rb.velocity);
                 rb.velocity = AirMove(rb.velocity);
+                if (rb.velocity.y <= 0)
+                {
+                    ChangeState(CharacterState.Fall);
+                    break;
+                }
                 break;
                 break;
             case CharacterState.Fall:
             case CharacterState.Fall:
                 if (CheckSummon())
                 if (CheckSummon())