public void StartingMenu() { int rowsInput, colsInput; eGameType gameTypeInput; ExitOrCont exitOrCont = ExitOrCont.Continue; string firstName, secondName = "pc"; Console.WriteLine("Hello, Welcome to the game, please enter your name"); GetValidName(out firstName); GetValidChoise(out gameTypeInput); while (exitOrCont != ExitOrCont.Exit) { GetValidBoardSize(out rowsInput, out colsInput); InitLetterArray(rowsInput, colsInput); if (gameTypeInput == eGameType.AgainstPlayer2) { Console.WriteLine("Please enter second player name: "); GetValidName(out secondName); } m_PlayGame = new PlayGame(firstName, secondName, rowsInput, colsInput, gameTypeInput); StartMoves(out exitOrCont); if (exitOrCont == ExitOrCont.Continue) { GetValidExitOrCont(out exitOrCont); } } Console.WriteLine("Have a nice day"); }
private void GetValidTurn(out int o_Row, out int o_Col, out ExitOrCont o_ExitOrCont) { string turn; turn = Console.ReadLine(); if (turn.Length >= 2) { o_Col = GetNumOfColFromChar(turn[0]); o_Row = GetNumOfRowFromChar(turn[1]); } else { o_Col = 0; o_Row = 0; } o_ExitOrCont = ExitOrCont.Continue; while ((!CheckValidFormatOfATurn(turn) || !m_PlayGame.CheckValidRowCol(o_Row, o_Col)) && turn != "Q") { Console.WriteLine("Wrong Input, please pick a right cell"); turn = Console.ReadLine(); if (turn != "Q") { o_Col = GetNumOfColFromChar(turn[0]); o_Row = GetNumOfRowFromChar(turn[1]); } } if (turn == "Q") { o_ExitOrCont = ExitOrCont.Exit; } }
public void StartMoves(out ExitOrCont o_ExitOrCont) { eCurrentPlayer currPlayer = eCurrentPlayer.Player1; o_ExitOrCont = ExitOrCont.Continue; while (!m_PlayGame.IsEndOfGame() && o_ExitOrCont == ExitOrCont.Continue) { Ex02.ConsoleUtils.Screen.Clear(); showBoard(); if (currPlayer == eCurrentPlayer.Player1) { TurnOfPlayer(currPlayer, out o_ExitOrCont); currPlayer = eCurrentPlayer.Player2; } else if (m_PlayGame.GameType == eGameType.AgainstComp) { TurnOfPc(); currPlayer = eCurrentPlayer.Player1; } else { TurnOfPlayer(currPlayer, out o_ExitOrCont); currPlayer = eCurrentPlayer.Player1; } } if (o_ExitOrCont == ExitOrCont.Continue) { WinnerDecleration(); } }
private void PlayerStepInputAndShowBoard(out int o_Row, out int o_Col, out ExitOrCont o_ExitOrCont) { GetValidTurn(out o_Row, out o_Col, out o_ExitOrCont); if (o_ExitOrCont == ExitOrCont.Continue) { m_PlayGame.MarkCell(o_Row, o_Col); Ex02.ConsoleUtils.Screen.Clear(); showBoard(); } }
private void GetValidExitOrCont(out ExitOrCont o_UserChoiseExitOrCont) { int userInput; Console.WriteLine("Do you want to play another game? press 1 for yes and 2 for no "); int.TryParse(Console.ReadLine(), out userInput); while (!CheckIfValidChoise(userInput)) { Console.WriteLine("Wrong Choise!"); Console.WriteLine("Do you want to play another game? press 1 for yes and 2 for no "); int.TryParse(Console.ReadLine(), out userInput); } o_UserChoiseExitOrCont = (ExitOrCont)userInput; }
private void TurnOfPlayer(eCurrentPlayer i_CurrPlayer, out ExitOrCont o_ExitOrCont) { // string turn; int row1, col1, row2, col2; Console.WriteLine("Please enter the first card for " + i_CurrPlayer); PlayerStepInputAndShowBoard(out row1, out col1, out o_ExitOrCont); if (o_ExitOrCont == ExitOrCont.Continue) { Console.WriteLine("Please enter the second card"); PlayerStepInputAndShowBoard(out row2, out col2, out o_ExitOrCont); if (m_PlayGame.AddPointsIfCorrectAns(row1, col1, row2, col2, i_CurrPlayer)) { Console.WriteLine("Congrats! Right Choise"); } else { Console.WriteLine("Not bad. Maybe Next Time"); } } System.Threading.Thread.Sleep(2000); }