diff --git a/OOP_2B1_Project/src/backend/Board.java b/OOP_2B1_Project/src/backend/Board.java index d5bbad6..7b7c521 100644 --- a/OOP_2B1_Project/src/backend/Board.java +++ b/OOP_2B1_Project/src/backend/Board.java @@ -404,18 +404,16 @@ public class Board implements Cloneable { // Remove the piece from its original location pieces.remove(pieceToMove); - // --- Pawn Promotion Logic (Your existing logic is here and correct for your pawn setup) --- + if (pieceToMove.getType() == PieceType.Pawn) { if ((pieceToMove.isWhite() && move.getToRow() == 0) || (!pieceToMove.isWhite() && move.getToRow() == 7)) { - // Promote the pawn to a queen + Piece promotedPiece = makeNewPiece(PieceType.Queen, pieceToMove.isWhite(), move.getToCol(), move.getToRow()); pieces.add(promotedPiece); - // Update turn info turnIsWhite = !turnIsWhite; turnNumber++; - // Play move sound if enabled playMoveSound(); return; } diff --git a/OOP_2B1_Project/testPromotion b/OOP_2B1_Project/testPromotion new file mode 100644 index 0000000..b1f3212 --- /dev/null +++ b/OOP_2B1_Project/testPromotion @@ -0,0 +1,9 @@ +BR,BN,BB,BQ,BK,BB,BN,BR +,BP,BP,BP,BP,BP,WP,BP +,,,,,,, +,,,,,,, +,,,,,,, +,,,,,,, +WP,BP,WP,WP,WP,WP,WP, +WR,WN,WB,WQ,WK,WB,WN,WR +W