private void TransitionToNextPlayerState() { if (currentPlayerState == PlayerSequenceState.Cleaning) { currentPlayerState = PlayerSequenceState.CreatingNewTetrimino; return; } currentPlayerState = currentPlayerState + 1; }
private void TransitionToPreviousPlayerState() { if (currentPlayerState == PlayerSequenceState.CreatingNewTetrimino) { // unreachable, maybe. currentPlayerState = PlayerSequenceState.Cleaning; return; } currentPlayerState = currentPlayerState - 1; }
private IPlayerState GetPlayerState(PlayerSequenceState state) { switch (state) { case PlayerSequenceState.CreatingNewTetrimino: return(CreatingNewTetriminoState); case PlayerSequenceState.Dropping: return(DroppingState); case PlayerSequenceState.Piling: return(PilingState); case PlayerSequenceState.Cleaning: return(CleaningState); } return(null); }