diff --git a/build.gradle b/build.gradle index ba8d57587005007983b1d642bfe0e52d3c6754de..d1f46e61d45d5c3c4f42232b8ba4129d1b3d8333 100644 --- a/build.gradle +++ b/build.gradle @@ -2,10 +2,11 @@ plugins { id 'application' id "org.openjfx.javafxplugin" version "0.0.14" + id 'com.github.johnrengelman.shadow' version '8.1.1' } javafx { - version = "20" + version = "21" modules = [ 'javafx.controls', 'javafx.fxml' ] } @@ -29,4 +30,12 @@ test { application { mainClass.set("FirefighterApplication") +} + +jar { + manifest { + attributes("Implementation-Title": project.name, + "Implementation-Version": version, + "Main-Class": application.mainClass) + } } \ No newline at end of file diff --git a/src/main/java/FirefighterApplication.java b/src/main/java/FirefighterApplication.java index b666b634fd7682c3f44edd97095d6542e1552ed0..e43ebd99682af868c317d69dc01a16c663fb4d26 100644 --- a/src/main/java/FirefighterApplication.java +++ b/src/main/java/FirefighterApplication.java @@ -5,7 +5,6 @@ import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; -import model.FirefighterBoard; import java.io.IOException; import java.net.URL; @@ -13,10 +12,10 @@ import java.net.URL; public class FirefighterApplication extends Application { private static final String VIEW_RESOURCE_PATH = "/view/view.fxml"; private static final String APP_NAME = "Firefighter simulator"; - private static final int ROW_COUNT = 50; - private static final int COLUMN_COUNT = 50; - private static final int SQUARE_WIDTH = 20; - private static final int SQUARE_HEIGHT = 20; + private static final int ROW_COUNT = 20; + private static final int COLUMN_COUNT = 20; + private static final int SQUARE_WIDTH = 50; + private static final int SQUARE_HEIGHT = 50; public static final int INITIAL_FIRE_COUNT = 3; public static final int INITIAL_FIREFIGHTER_COUNT = 6; diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java index fed82dd5774bfce9bc8bb4ee21d06c68c873bee8..c4e3232ddb9e0e8ed0363f26e102874175c55843 100644 --- a/src/main/java/controller/Controller.java +++ b/src/main/java/controller/Controller.java @@ -27,6 +27,10 @@ public class Controller { public static final int PERIOD_IN_MILLISECONDS = 50; @FXML + public Button restartButton; + @FXML + public Button oneStepButton; + @FXML private ToggleButton pauseToggleButton; @FXML private ToggleButton playToggleButton; @@ -99,15 +103,15 @@ public class Controller { timeline.pause(); } - public void pauseToggleButtonAction(ActionEvent actionEvent) { + public void pauseToggleButtonAction() { this.pause(); } - public void playToggleButtonAction(ActionEvent actionEvent) { + public void playToggleButtonAction() { this.play(); } - public void restartButtonAction(ActionEvent actionEvent) { + public void restartButtonAction() { this.pause(); board.reset(); pauseToggleButton.setSelected(true); @@ -121,7 +125,7 @@ public class Controller { repaintBoard(); } - public void oneStepButtonAction(ActionEvent actionEvent) { + public void oneStepButtonAction() { this.pause(); updateBoard(); } diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java index 35a6b28854a2b1ddb10643471abb748b7ff893c9..910e0365456e320af2e2af7ce969e5777b30dbc5 100644 --- a/src/main/java/model/FirefighterBoard.java +++ b/src/main/java/model/FirefighterBoard.java @@ -82,9 +82,9 @@ public class FirefighterBoard implements Board<List<ModelElement>> { for (Position firefighterPosition : firefighterPositions) { Position newFirefighterPosition = neighborClosestToFire(firefighterPosition); result.add(firefighterPosition); - result.add(newFirefighterPosition); firefighterNewPositions.add(newFirefighterPosition); extinguish(newFirefighterPosition); + result.add(newFirefighterPosition); List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream().filter(firePositions::contains).toList(); for(Position firePosition : neighborFirePositions) extinguish(firePosition);