private string toStringBoard() // Checked { char space = ' '; StringBuilder resultedString = new StringBuilder($"{space}{space}"); for (int col = 1; col < this.m_Game.GameBoard.Size; col++) { resultedString.Append($"{col}"); resultedString.Append(space, 3); } resultedString.AppendLine(); for (int row = 1; row < this.m_Game.GameBoard.Size; row++) { resultedString.Append($"{row}|"); for (int col = 1; col < this.m_Game.GameBoard.Size; col++) { ePlayersMark currentSign = this.m_Game.GameBoard.GameBoard[row, col]; char currentChar = k_Empty; if (currentSign == ePlayersMark.Player1) { currentChar = k_Cross; } else if (currentSign == ePlayersMark.Player2) { currentChar = k_Circle; } resultedString.Append($" {currentChar} |"); } resultedString.AppendLine(); resultedString.Append(space); for (int col = 1; col < this.m_Game.GameBoard.Size; col++) { // 1-5 2-9 3-13 4-17 5-21 --> 1=5 2=5+4 3=5+4+3 4=5+4+3+2 resultedString.Append('=', 4); } resultedString.Append('='); resultedString.AppendLine(); } return(resultedString.ToString()); }
private void updateTheUserInterfaceAccordingTheState() // Checked { eGameState currentState = this.m_Game.CurrentGameState; ePlayersMark signOfTheWinner = this.m_Game.WinnerPlayer.Sign; if (currentState == Win) { printWinMessage(signOfTheWinner); } else if (currentState == Tie) { printTieMessage(); } else if (currentState == Quit) { printQuitMessage(signOfTheWinner); } printScore(); }
internal (int, int) GetValidPointFromUser(ePlayersMark i_PlayerMarkSign) // Checked { bool isValidPoint = false; int row = 0; int column = 0; Console.WriteLine( $@"{i_PlayerMarkSign}! Its your turn now! Please enter one digit number as row and then column for your next move :"); while (!isValidPoint) { Console.WriteLine($"{i_PlayerMarkSign} : Please enter row number:"); row = getValidNumberInBoardRangeFromUser(); if (row == -1) { column = -1; break; } Console.WriteLine($"{i_PlayerMarkSign} : Please enter column number:"); column = getValidNumberInBoardRangeFromUser(); if (column == -1) { row = -1; break; } isValidPoint = this.m_Game.IsEmptySpot(row, column); if (isValidPoint == false) { Console.WriteLine( $@"{i_PlayerMarkSign} : Sorry, this spot is not empty. Please choose a new one! REMINDER: choose one digit number as ROW and then COLUMN in valid range size, for your next move"); } } return(row, column); }
private static void printQuitMessage(ePlayersMark i_SignOfTheWinner) { Console.WriteLine($"You Quit from the Game! The winner in this round is : {i_SignOfTheWinner}"); }
private static void printWinMessage(ePlayersMark i_SignOfTheWinner) { Console.WriteLine($"Well done! The winner in this round is : {i_SignOfTheWinner}"); }
public Player(ePlayersMark i_Sign, bool i_IsComputer) { r_Sign = i_Sign; r_IsComputer = i_IsComputer; m_NumberOfWins = 0; }