def test_learner_random_players(self): player1 = Learner() player2 = RandomPlayer() game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
def test_human_learner_players(self): player1 = HumanPlayer() player2 = Learner() game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
def test_random_human_players(self): player1 = RandomPlayer() player2 = HumanPlayer() game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
def test_2_human_players(self): player1 = HumanPlayer('H1') player2 = HumanPlayer('H2') game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
def test_2_random_players(self): player1 = RandomPlayer('R1') player2 = RandomPlayer('R2') game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
def test_2_deterministic_players_gui(self): player1 = DeterministicPlayer('D1') player2 = DeterministicPlayer('D2') game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()
self.game.play(*move, player) if self.gui: self.gui.play_view(*move, player) self.next_player() if self.gui: if self.game.is_winner(self.current_player()): self.gui.game_over(self.current_player()) else: self.gui.game_over() ## Checks if the game has ended. A games is over if # - either of the player has won # - or there is a draw preventing either playing from winning. # Sets winner variable to current_player(), if not a draw. # @return True if the game is over, and false otherwise. def is_game_over(self): won = self.game.is_winner(self.current_player()) draw = not self.game.available_moves() if won: self.winner = self.current_player() return won or draw if __name__ == '__main__': player1 = HumanPlayer('P1') player2 = RandomPlayer('P2') game = TicTacToe() gui = KtinterGui(game) match = Match(gui, game, players=[player1, player2]) match.play()