BOUND_EXACT = BOUND_UPPER | BOUND_LOWER
};
+enum ExplosionState {
+ EXPLOSION_NONE,
+ MUST_CALM_DOWN
+};
+
enum Value : int {
VALUE_ZERO = 0,
VALUE_DRAW = 0,
BishopValueMg = 825, BishopValueEg = 915,
RookValueMg = 1276, RookValueEg = 1380,
QueenValueMg = 2538, QueenValueEg = 2682,
- Tempo = 28,
MidgameLimit = 15258, EndgameLimit = 3915
};
return Move((from << 6) + to);
}
-constexpr Move reverse_move(Move m) {
- return make_move(to_sq(m), from_sq(m));
-}
-
template<MoveType T>
constexpr Move make(Square from, Square to, PieceType pt = KNIGHT) {
return Move(T + ((pt - KNIGHT) << 12) + (from << 6) + to);