Compare commits
2 Commits
debffdd8b5
...
4b260b4866
| Author | SHA1 | Date |
|---|---|---|
|
|
4b260b4866 | |
|
|
ad01fdd17b |
|
|
@ -403,7 +403,7 @@ public class Board {
|
|||
public Board(Board board) {
|
||||
//TODO
|
||||
|
||||
}
|
||||
}// test
|
||||
|
||||
public void playMove(Move move) {
|
||||
// Save current state before move for undo
|
||||
|
|
@ -415,6 +415,12 @@ public class Board {
|
|||
board[move.getFromX()][move.getFromY()] = null;
|
||||
piece.x = move.getToX();
|
||||
piece.y = move.getToY();
|
||||
|
||||
if (piece.getType() == PieceType.Pawn &&
|
||||
(piece.getY() == 0 || piece.getY() == height - 1)) {
|
||||
board[piece.getX()][piece.getY()] = promotePawn(piece.isWhite(), piece.getX(), piece.getY());
|
||||
}
|
||||
|
||||
turn++;
|
||||
}
|
||||
|
||||
|
|
@ -469,6 +475,10 @@ public class Board {
|
|||
return false; // King is not in check
|
||||
}
|
||||
|
||||
public static Piece promotePawn(boolean isWhite, int x, int y) {
|
||||
return new Piece(isWhite, PieceType.Queen, x, y);
|
||||
}
|
||||
|
||||
private void highlightKingInCheck() {
|
||||
// Check if white king is in check
|
||||
Piece whiteKing = findKing(true);
|
||||
|
|
|
|||
Loading…
Reference in New Issue