|
|
|
@ -871,3 +871,42 @@ const std::array<PieceType, 120> CASTLE_CHECK4_BOARD = {
|
|
|
|
|
const std::vector<std::string> CASTLE_CHECK4_NOTATION = {
|
|
|
|
|
"Kf8"
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// This is a check that moves are being marked as "check moves" poperly
|
|
|
|
|
const int ROOK_CHECK_POS = H3;
|
|
|
|
|
const int ROOK_CHECK_KING_POS = H3;
|
|
|
|
|
const std::array<PieceType, 120> ROOK_CHECK_BOARD = {
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, B_PAWN, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, B_PAWN, B_ROOK, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, W_PAWN, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, W_ROOK, W_KING, NONE, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV
|
|
|
|
|
};
|
|
|
|
|
const std::array<PieceType, 120> ROOK_CHECK_MOVED_BOARD = {
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, NONE, B_PAWN, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, NONE, B_PAWN, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, W_PAWN, NONE, NONE, INV,
|
|
|
|
|
INV, NONE, NONE, NONE, NONE, NONE, W_ROOK, W_KING, B_ROOK, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV,
|
|
|
|
|
INV, INV, INV, INV, INV, INV, INV, INV, INV, INV
|
|
|
|
|
};
|
|
|
|
|
const std::vector<std::string> ROOK_CHECK_NOTATION = {
|
|
|
|
|
"Rh2", "Rh1+"
|
|
|
|
|
};
|
|
|
|
|
const std::vector<int> ROOK_CHECK_FLAGS = {
|
|
|
|
|
0, 1
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|