[MoveGenerator] Implement generateKnightMoves

This commit is contained in:
2022-12-22 23:35:07 +01:00
parent 79b5dd4a86
commit 2c31de83b7
5 changed files with 26 additions and 1 deletions

View File

@@ -113,6 +113,13 @@ void MoveGenerator::generateQueenMoves(const BoardState &bs, const Square &from,
generateMoves(from, movesBB, moves);
}
void MoveGenerator::generateKnightMoves(const BoardState &bs, const Square &from, MoveVec &moves) {
auto fromBB = BitBoard::fromIndex(from.index());
auto movesBB = BitBoard::knightAttacks(fromBB) & ~(*bs.pieceBBs)[Board::toIndex(bs.turn)];
generateMoves(from, movesBB, moves);
}
//BitBoard MoveGenerator::generateAttackedSquares(const BoardState &bs, BitBoard target, PieceColor opColor) const {
// auto opponentBB = (*bs.pieceBBs)[Board::toIndex(opColor)];
//