diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java index 16e9b0d20e438d89aa55d91735b64d4dbaea6286..fed82dd5774bfce9bc8bb4ee21d06c68c873bee8 100644 --- a/src/main/java/controller/Controller.java +++ b/src/main/java/controller/Controller.java @@ -27,8 +27,6 @@ public class Controller { public static final int PERIOD_IN_MILLISECONDS = 50; @FXML - private Button restartButton; - @FXML private ToggleButton pauseToggleButton; @FXML private ToggleButton playToggleButton; @@ -123,4 +121,8 @@ public class Controller { repaintBoard(); } + public void oneStepButtonAction(ActionEvent actionEvent) { + this.pause(); + updateBoard(); + } } \ No newline at end of file diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java index 2586fe87b9e7b5028e69083525156a4ec00b8942..35a6b28854a2b1ddb10643471abb748b7ff893c9 100644 --- a/src/main/java/model/FirefighterBoard.java +++ b/src/main/java/model/FirefighterBoard.java @@ -88,7 +88,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> { List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream().filter(firePositions::contains).toList(); for(Position firePosition : neighborFirePositions) extinguish(firePosition); - result.addAll(firePositions); + result.addAll(neighborFirePositions); } firefighterPositions = firefighterNewPositions; return result; diff --git a/src/main/resources/view/view.fxml b/src/main/resources/view/view.fxml index 73d4c93e45841c20d4c728ea21c60237dffc6898..e8b0ffc8a0ea92ec2814d11fa134e403923198e4 100644 --- a/src/main/resources/view/view.fxml +++ b/src/main/resources/view/view.fxml @@ -13,6 +13,9 @@ <Button fx:id="restartButton" maxHeight="-Infinity" maxWidth="-Infinity" mnemonicParsing="false" onAction="#restartButtonAction" prefHeight="24.0" prefWidth="200.0" text="Restart"/> + <Button fx:id="oneStepButton" maxHeight="-Infinity" maxWidth="-Infinity" + mnemonicParsing="false" onAction="#oneStepButtonAction" prefHeight="24.0" prefWidth="200.0" + text="One step"/> <ToggleButton fx:id="playToggleButton" maxHeight="-Infinity" maxWidth="-Infinity" mnemonicParsing="false" onAction="#playToggleButtonAction" prefHeight="24.0" prefWidth="200.0" styleClass="button" text="Play"/>