|
Xiangiqgame
AI engine for Xiangqi
|
Runs a game between two Players. More...

Public Member Functions | |
| def | __init__ (self, Dict[bindings.PieceColor, Player] players, bindings.GameBoard game_board, MoveReporter status_reporter=msg.TerminalStatusReporter(), List[bindings.Move] move_log=None) |
| GameSummary | summary (self) |
| def | change_whose_turn (self) |
| def | get_valid_move (self, bindings.MoveCollection avail_moves) |
| def | player_turn (self, bindings.MoveCollection avail_moves) |
| Selects and executes a move. | |
| def | set_game_state (self, GameState game_state) |
| def | set_winner (self, int color) |
| def | send_game_info_to_status_reporter (self) |
| GameSummary | play (self) |
Static Public Member Functions | |
| def | is_valid_move (bindings.Move proposed_move, List[bindings.Move] avail_moves) |
Protected Member Functions | |
| def | _move_count (self) |
Protected Attributes | |
| _game_state | |
| _whose_turn | |
| _board | |
| _players | |
| _status_reporter | |
| _move_log | |
| _game_id | |
Runs a game between two Players.
Tracks Game state, collects proposed moves, alternates Player turns, maintains on gong GameSummary, and sends info to terminal.
| def xiangqipy.game.Game.__init__ | ( | self, | |
| Dict[bindings.PieceColor, Player] | players, | ||
| bindings.GameBoard | game_board, | ||
| MoveReporter | status_reporter = msg.TerminalStatusReporter(), |
||
| List[bindings.Move] | move_log = None |
||
| ) |
| def xiangqipy.game.Game.get_valid_move | ( | self, | |
| bindings.MoveCollection | avail_moves | ||
| ) |
|
static |
| GameSummary xiangqipy.game.Game.play | ( | self | ) |
| def xiangqipy.game.Game.player_turn | ( | self, | |
| bindings.MoveCollection | avail_moves | ||
| ) |
| def xiangqipy.game.Game.send_game_info_to_status_reporter | ( | self | ) |
| def xiangqipy.game.Game.set_game_state | ( | self, | |
| GameState | game_state | ||
| ) |
| GameSummary xiangqipy.game.Game.summary | ( | self | ) |