[BitBoard] Add castlingMoves

This commit is contained in:
2022-12-22 18:36:36 +01:00
parent db20e49f35
commit e18146e00c
2 changed files with 12 additions and 0 deletions

View File

@@ -53,6 +53,17 @@ BitBoard BitBoard::kingAttacks(const BitBoard kings) {
return result;
}
BitBoard BitBoard::castlingMoves(BitBoard kings, BitBoard rooks, BitBoard empty) {
kings |= (kings.east() | kings.west()) & empty;
kings |= (kings.east() | kings.west()) & empty;
kings |= kings.west() & empty;
rooks |= (rooks.east() | rooks.west()) & empty;
rooks |= (rooks.east() | rooks.west()) & empty;
rooks |= (rooks.east()) & empty;
return kings & rooks & CastlingSquares;
}
BitBoard BitBoard::bishopAttacks(BitBoard bishops, BitBoard empty) {
BitBoard result = 0;
BitBoard diag1 = bishops;