/// <summary> /// Displays who the winner is /// </summary> /// <param name="winner"></param> public void DisplayWinner(Gameboard.PlayerColor winner) { string message = ""; switch (winner) { case Gameboard.PlayerColor.None: //draw game message message = "Tie Game!"; break; case Gameboard.PlayerColor.Red: //player one wins message message = "Player One Wins!"; break; case Gameboard.PlayerColor.Blue: //player two wins message message = "Player Two Wins!"; break; } message += " Press any key to continue."; _consoleMenu.DrawTextBox(message, true); Console.ReadKey(true); }
/// <summary> /// Manages the player's turns /// </summary> /// <param name="playerColor"></param> private void ManagePlayerTurn(Gameboard.PlayerColor playerColor) { int column = 0; bool validChoice = false; while (!validChoice) { ConsoleKey key = Console.ReadKey(true).Key; switch (key) { case ConsoleKey.LeftArrow: column--; column = column < 0 ? _gameboard.MaxCols - 1 : column; break; case ConsoleKey.RightArrow: column++; column = column > _gameboard.MaxCols - 1 ? 0 : column; break; case ConsoleKey.Spacebar: //attempt to place piece in selected column if (_gameboard.GameboardPositionAvailable(column)) { validChoice = true; _gameboard.SetPlayerPiece(column, playerColor); } break; case ConsoleKey.Escape: InGameMenu(); break; } //Check if Still Playing if (_playingRound) { _gameView.UpdateGameArea(_gameboard, column); } else { break; } } }