Fixed undoMove feature in ChessEngine
parent
7e4ac22e51
commit
3bad46f9ea
|
@ -23,7 +23,13 @@ public class ChessEngine {
|
|||
Move libMove = new Move(Square.valueOf(from), Square.valueOf(to));
|
||||
if (board.legalMoves().contains(libMove)) {
|
||||
board.doMove(libMove);
|
||||
moves.add(libMove); // <-- hier merken!
|
||||
|
||||
//Replay? Dann abschneiden
|
||||
if (currentMoveIndex < moves.size()) {
|
||||
moves = new ArrayList<>(moves.subList(0, currentMoveIndex));
|
||||
}
|
||||
moves.add(libMove);
|
||||
currentMoveIndex++;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
Loading…
Reference in New Issue