1import xiangqi_bindings
as xb
9 _move_evaluator_type_converter = {
10 xb.EvaluatorType.kHuman: pen.EvaluatorType.NULL,
11 xb.EvaluatorType.kRandom: pen.EvaluatorType.RANDOM,
12 xb.EvaluatorType.kMinimax: pen.EvaluatorType.MINIMAX,
17 core_player_spec: xb.PlayerSpec,
18 core_search_summaries: xb.SearchSummaries,
30 return pen.PlayerType.HUMAN
32 return pen.PlayerType.AI
55 return cdm.SearchSummaries.from_core_search_summaries(
60 return pps.PlayerSummary(
72 _game_state_converter = {
73 xb.GameState.kUnfinished: pen.GameState.UNFINISHED,
74 xb.GameState.kRedWon: pen.GameState.RED_WON,
75 xb.GameState.kBlkWon: pen.GameState.BLACK_WON,
76 xb.GameState.kDraw: pen.GameState.DRAW,
79 def __init__(self, core_game_summary: xb.GameSummary):
93 last_move_piece = last_move.moving_piece
94 last_move_color = last_move_piece.piece_color
95 return xb.opponent_of(last_move_color)
100 cdm.ExecutedMove.from_core_executed_move(move)
107 return pgs.PlayerSummaries(
127 return pgs.GameSummary(
cdm.SearchSummaries py_search_summaries(self)
xb.PieceColor py_color(self)
pen.PlayerType py_player_type(self)
int py_zobrist_key_size(self)
pen.EvaluatorType py_move_evaluator_type(self)
dict _move_evaluator_type_converter
pps.PlayerSummary convert(self)
int py_max_search_depth(self)
def __init__(self, xb.PlayerSpec core_player_spec, xb.SearchSummaries core_search_summaries)
xb.PieceColor py_whose_turn(self)
def __init__(self, xb.GameSummary core_game_summary)
list[xb.ExecutedMove] py_move_log(self)
dict _game_state_converter
pgs.GameSummary convert(self)
pgs.PlayerSummaries py_player_summaries(self)
pen.GameState py_game_state(self)
Contains classes that mirror the structure of some core C++ classes, primarily to facilitate easy IO ...
Enums that are only used on the Python side of the app.
GameSummary class and its component classes.
Contains PlayerSummary class.