public void WallJumpUpdate() { if (InputDelayInEffect()) { return; } if (playerController.playerState.IsTouchingFloor()) { return; } if (!playerController.playerState.IsTouchingWall() && !playerController.playerState.IsTouchingWallBehind()) { return; } if (!input.JumpButtonPressed()) { if (!playerController.playerControllerData.usePreEmptiveCoyoteTime) { return; } if (playerController.pressedAt + playerController.playerControllerData.preEmptiveCoyoteTime < Time.timeSinceLevelLoad) { return; } } CalculateWallJump(); return; }
public void JumpUpdate() { if (!input.JumpButtonPressed() && !input.JumpButtonLetGo() && !input.JumpButtonHeld()) { if (!playerController.playerState.IsTouchingFloor() && playerController.currentVelocity.y > 0) { playerController.currentVelocity.y = 0; } playerController.playerState.NotJumping(); return; } if (input.JumpButtonPressed()) { CalcualteJump(); playerController.lastTouchedGround = -1; return; } if (input.JumpButtonLetGo()) { CalculateForWhenJumpButtonLetGo(); playerController.playerState.NotJumping(); return; } }