on test moves original square == null instead of captured piece
This commit is contained in:
@@ -38,7 +38,7 @@ public class King extends Piece {
|
||||
ArrayList<Position> positions = getPseudoLegalMoves(board);
|
||||
for (Position p : new ArrayList<>(positions)) {
|
||||
Piece tempPiece = board.getPiece(p);
|
||||
board.setPiece(pos, tempPiece);
|
||||
board.setPiece(pos, null);
|
||||
board.setPiece(p, this);
|
||||
if (inCheck(board, p)) {
|
||||
positions.remove(p);
|
||||
@@ -54,7 +54,7 @@ public class King extends Piece {
|
||||
for (Piece p : pieces) {
|
||||
if (p == null) continue;
|
||||
if (!p.colorMatches(this) && !(p instanceof King)) {
|
||||
ArrayList<Position> ar = p.getLegalMoves(board);
|
||||
ArrayList<Position> ar = p.getPseudoLegalMoves(board);
|
||||
for (Position posi : ar) {
|
||||
if (pos.equals(posi)) return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user