private Player CheckCurrentStatus(Game ticTacToe) { Player winner = Player.None; for (int i = 0; i < ticTacToe.Dimensions; i++) { winner = TicTacToeHelper.CheckRow(ticTacToe, i); if (winner == Player.None) { winner = TicTacToeHelper.CheckColumn(ticTacToe, i); if (winner != Player.None) { return(winner); } } else { break; } } if (winner == Player.None) { winner = TicTacToeHelper.CheckDiagonal(ticTacToe); } return(winner); }
public void CheckDiagonalTest() { CreateInstance(Constants.FILE_INPUT_PATH_CHECKDIAGONAL); var expectedWinner = Player.X; var actualWinner = TicTacToeHelper.CheckDiagonal(_game); Assert.AreEqual(expectedWinner, actualWinner); }
public void CheckColumnTest() { CreateInstance(Constants.FILE_INPUT_PATH_CHECKCOLUMN); var expectedWinner = Player.O; var actualWinner = TicTacToeHelper.CheckColumn(_game, 0); Assert.AreEqual(expectedWinner, actualWinner); }
public void CheckRowTest() { CreateInstance(Constants.FILE_INPUT_PATH_CHECKROW); var expectedWinner = Player.X; var actualWinner = TicTacToeHelper.CheckRow(_game, 0); Assert.AreEqual(expectedWinner, actualWinner); }
public string GameOn(int coordinate, char symbol) { bool loop = true; do //max 2 gånger: 1 varv - granska allt efter spelare; 2 varv - granskar allt efter datorn; då datorn hade sista drag loop = false { BoxList.Add(new BoxInfo(coordinate, symbol)); //upptagna boxes, varje gång efter drag bool continueGame = WinningMove(symbol); if (continueGame == false) //nån vann { ActiveGameStatus.Text = $"Congratulation (( {symbol} )). You win!!!"; return(ActiveGameStatus.Status = "Winner"); } if (BoxList.Count == 9) //alla boxes upptagna { BordFull = true; ActiveGameStatus.Text = "Game over. No winner."; return(ActiveGameStatus.Status = "No winner"); } if (symbol == 'x')//sista drag gjorts av spelare, dator måste spela { var compMove = TicTacToeHelper.CompMove(BoxList); coordinate = compMove.BoxCoordinate; symbol = compMove.Value; } else if (symbol == 'o')//sista drag gjorts av datorn, loop = false { loop = false; } } while (loop); ActiveGameStatus.Text = "Next move, please...";//ingen vinnare, spelet sker return(ActiveGameStatus.Status = "Active"); }
private Player CheckNextMove(Game game) { return(TicTacToeHelper.NextMove(game)); }
public GameService(IGameRepository gameRepository, TicTacToeHelper ticTacToeHelper) { _gameRepository = gameRepository; _ticTacToeHelper = ticTacToeHelper; }