public void OnControlBtnClicked(PlayerMoveDir moveDir) { if (m_PlayerData.HasEnergy() == false) { ChangePlayerStateWithoutInput(); return; } ChangePlayerStateWithInput(moveDir); m_PlayerData.UseEnergy(); SendEvent(EventID.OnPlayerEnergyChanged, m_PlayerData.GetEnergyPercent()); }
private void ChangePlayerStateWithInput(PlayerMoveDir moveDir) { m_PreviousMoveDir = m_MoveDir; m_MoveDir = moveDir; m_PlayerTrailSpawner.StartSpawnTrail(moveDir); if (moveDir == PlayerMoveDir.Vertical) { SetState(PlayerStateID.Jump); } else { if (m_PlayerRaycast.HasBoardDown) { SetState(PlayerStateID.Move); } else { SetState(PlayerStateID.Jump); } } }