BOUND_EXACT = BOUND_UPPER | BOUND_LOWER
};
+enum ExplosionState {
+ EXPLOSION_NONE,
+ MUST_CALM_DOWN
+};
+
enum Value : int {
VALUE_ZERO = 0,
VALUE_DRAW = 0,
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);