diff --git a/src/main/java/model/Board/FirefighterBoard.java b/src/main/java/model/Board/FirefighterBoard.java index 55fe8db0070efcb26d93566465cb8ea6613158c3..d2637f3c79ef81eb9ac72fd588aef45f44cdbaad 100644 --- a/src/main/java/model/Board/FirefighterBoard.java +++ b/src/main/java/model/Board/FirefighterBoard.java @@ -43,9 +43,6 @@ public class FirefighterBoard implements Board<List<ModelElement>> { public void initializeElements() { - obstacles.clear(); - extinguishers.clear(); - fires.clear(); for(ModelElement modelElement : ModelElement.values()){ for(int elementCount = 0; elementCount< modelElement.getInitialNumber();elementCount++){ Position position = randomPosition(); @@ -94,7 +91,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> { public List<Position> updateToNextGeneration() { - Fire fire = new Fire(randomPosition()); + Fire fire = new Fire(null); List<Position> modifiedPositions = new ArrayList<>(); for(Extinguisher element : extinguishers.values()){ @@ -124,6 +121,9 @@ public class FirefighterBoard implements Board<List<ModelElement>> { @Override public void reset() { step = 0; + obstacles.clear(); + extinguishers.clear(); + fires.clear(); initializeElements(); } diff --git a/src/main/java/model/Elements/Extinguisher/Extinguisher.java b/src/main/java/model/Elements/Extinguisher/Extinguisher.java index 13fe6e53fd2e711e08949ece1d00f4c662296a65..7d45c8895786bfe9bb477e8fcd27d69f7b44277f 100644 --- a/src/main/java/model/Elements/Extinguisher/Extinguisher.java +++ b/src/main/java/model/Elements/Extinguisher/Extinguisher.java @@ -25,12 +25,12 @@ public abstract class Extinguisher implements model.Elements.element { public void setPosition(Position position) { this.position = position; - } public ModelElement getElement(){ return this.element; } + public void extinguish(Board board, Position position) { if (board.getFires().containsKey(position)) { board.getFires().remove(position); diff --git a/src/main/java/model/Elements/ModelElement.java b/src/main/java/model/Elements/ModelElement.java index 0d7d50ee39e4bbdd4024b4436946addde59eb95b..d133bb10b1c2f92a2a9e4d44f9e8ba03d5db6d93 100644 --- a/src/main/java/model/Elements/ModelElement.java +++ b/src/main/java/model/Elements/ModelElement.java @@ -15,12 +15,14 @@ import util.Position; public enum ModelElement { FIREFIGHTER(5), - FIRE(20), + FIRE(25), CLOUD(10), ROAD(5), MOUNTAIN(5), ROCAILLE(3), - MOTORIZEDFIREFIGHTER(5); + MOTORIZEDFIREFIGHTER(3); + + private final int initialNumber; @@ -34,7 +36,6 @@ public enum ModelElement { } public element getModelElementClass(Position position){ - return switch (this){ case FIRE -> new Fire(position); case ROAD -> new Road(position); diff --git a/src/main/java/view/ViewElement.java b/src/main/java/view/ViewElement.java index a5db13ab91dd52105810b5064e655a1351cbe245..62e3a45209d6076a2bf0781a794790ecd0552602 100644 --- a/src/main/java/view/ViewElement.java +++ b/src/main/java/view/ViewElement.java @@ -6,7 +6,7 @@ public enum ViewElement { FIREFIGHTER(Color.BLUE), FIRE(Color.RED), CLOUD(Color.LIGHTSKYBLUE), - ROAD(Color.GRAY), + ROAD(Color.BLACK), MOUNTAIN(Color.BROWN), ROCAILLE(Color.GREEN),