32 return dispatch_array;
Constants, typedefs, and simple structs used by gameboard::GameBoard.
Implements piece type dependent move rules; used by gameboard::MoveCalculator.
void ElephantMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void SoldierMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void HorseMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void AdvisorMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void GeneralMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void ChariotMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
void CannonMoves(const BoardMap_t &board_map, PieceColor color, const BoardSpace &space, MoveCollection &team_moves)
Tracking piece positions and determining legal moves.
void(PieceMoves::* MethodPtr_t)(const BoardMap_t &, PieceColor, const BoardSpace &, MoveCollection &)
array< MethodPtr_t, kNumPieceTypeVals > PieceDispatchArray_t
array< array< GamePiece, kNumFiles >, kNumRanks > BoardMap_t
2-D array of gameboard::GamePiece objects.
constexpr PieceDispatchArray_t build_piece_dispatch_array()
Definition of gameboard::PieceMoves and related constants.
A pair of coordinate (rank, and file) with properties determined by comparison with values of gameboa...
A container for multiple gameboard::Move objects.