update
This commit is contained in:
@@ -5,6 +5,8 @@
|
||||
#include "BitBoard.hpp"
|
||||
#include "Board.hpp"
|
||||
|
||||
#define BB_NUM 8
|
||||
|
||||
struct BoardState {
|
||||
BoardState(const BitBoard (*const pieceBBs)[8],
|
||||
const BitBoard occupiedBB,
|
||||
@@ -24,6 +26,17 @@ struct BoardState {
|
||||
const PieceColor turn;
|
||||
const CastlingRights cr;
|
||||
const std::optional<Square> eps;
|
||||
|
||||
inline PieceType pieceType(const BitBoard &mask) const {
|
||||
for (int i = 2; i < BB_NUM; i++) {
|
||||
if ((*pieceBBs)[i] & mask) {
|
||||
return static_cast<PieceType>(i);
|
||||
}
|
||||
}
|
||||
|
||||
// Should not happen
|
||||
return static_cast<PieceType>(0);
|
||||
}
|
||||
};
|
||||
|
||||
#endif //CHESS_ENGINE_BOARDSTATE_HPP
|
||||
|
Reference in New Issue
Block a user