Jelajahi Sumber

trying out castling

nicolaswinkler 7 tahun lalu
induk
melakukan
4c23340709
1 mengubah file dengan 12 tambahan dan 0 penghapusan
  1. 12 0
      src/Minimax.cpp

+ 12 - 0
src/Minimax.cpp

@@ -206,6 +206,18 @@ MiniMax::BestMove MiniMax::minimax(int depth)
         board = temp;
     }
 
+    if (side == WHITE_SIDE) {
+        if (game.getCanCastleKingSide(side)) {
+            if((board.getWhites().bits & 0x6) == 0) {
+                Move kingMove = {3, 1};
+                Move rookMove = {0, 2};
+                king.applyMove(kingMove);
+                rs.applyMove(rookMove);
+                board = temp;
+            }
+        }
+    }
+
     for (auto pos : CastlingGenerator<side>{ game }) {
         Move move = { kingIndex, pos };
         king.applyMove(move);