New method setPositionToMoveIndex for undo move feature in ChessEngine
parent
0bc99a18be
commit
745bf05fd3
|
@ -11,6 +11,8 @@ public class ChessEngine {
|
|||
private Board board;
|
||||
private List<Move> moves = new ArrayList<>();
|
||||
|
||||
private int currentMoveIndex = 0;
|
||||
|
||||
public ChessEngine() {
|
||||
board = new Board();
|
||||
}
|
||||
|
@ -91,6 +93,15 @@ public class ChessEngine {
|
|||
}
|
||||
}
|
||||
|
||||
public void setPositionToMoveIndex(int idx) {
|
||||
// Neues Board erzeugen
|
||||
board = new Board();
|
||||
for (int i = 0; i < idx; i++) {
|
||||
board.doMove(moves.get(i));
|
||||
}
|
||||
currentMoveIndex = idx;
|
||||
}
|
||||
|
||||
private PieceDTO convertPieceToDTO(Piece piece) {
|
||||
if (piece == null || piece.equals(Piece.NONE)) return null;
|
||||
String color = piece.name().startsWith("WHITE") ? "WHITE" : "BLACK";
|
||||
|
|
Loading…
Reference in New Issue