From c437220aab7b908995a87cf958d9a67e54d478cb Mon Sep 17 00:00:00 2001 From: Adam Date: Fri, 31 Jul 2026 19:07:24 +0200 Subject: keeping track of were all the pieces are --- src/board/board.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/board/board.cpp') diff --git a/src/board/board.cpp b/src/board/board.cpp index 92d448d..cb9254e 100644 --- a/src/board/board.cpp +++ b/src/board/board.cpp @@ -195,7 +195,7 @@ UndoMove MakeMove(Move move, Game *g) { if (g->halfMoveClock >= 50) { g->state = DRAW; } - + UpdateBitboards(g); return undo; }; void UnMakeMove(UndoMove undo, Game *g) { @@ -251,4 +251,15 @@ void UnMakeMove(UndoMove undo, Game *g) { if (g->ThreeFoldMap[undo.ZobristKey] <= 0) { g->ThreeFoldMap.erase(undo.ZobristKey); }; + UpdateBitboards(g); }; +void UpdateBitboards(Game *g) { + g->PieceBitboard = 0; + for (int i = 0; i < 64; i++) { + Piece piece = g->pieces[i]; + if (piece.type == NONEPIECE) { + continue; + } + g->PieceBitboard |= (1ULL << i); + } +} -- cgit v1.2.3