From 3bad46f9eaef381ea1c8c6bbf0c79dd7e8da7d8d Mon Sep 17 00:00:00 2001 From: Justin Date: Sun, 22 Jun 2025 01:58:47 +0200 Subject: [PATCH] Fixed undoMove feature in ChessEngine --- .../hs_mannheim/informatik/chess/model/ChessEngine.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/schach/src/main/java/de/hs_mannheim/informatik/chess/model/ChessEngine.java b/schach/src/main/java/de/hs_mannheim/informatik/chess/model/ChessEngine.java index 88e4ae7..3c69b6c 100644 --- a/schach/src/main/java/de/hs_mannheim/informatik/chess/model/ChessEngine.java +++ b/schach/src/main/java/de/hs_mannheim/informatik/chess/model/ChessEngine.java @@ -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;