From 06b99736eb89e459a6ae31062a4405034d14fb18 Mon Sep 17 00:00:00 2001 From: b22015516 <mehdi.belhachemi@etu.univ-amu.fr> Date: Wed, 27 Nov 2024 15:39:00 +0100 Subject: [PATCH] improving cloud class so that it extinguises neighbours --- src/main/java/model/Elements/Extinguisher/Cloud.java | 5 +++++ src/main/java/model/Elements/Extinguisher/Extinguisher.java | 4 ++-- src/main/java/model/Elements/Fire.java | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/model/Elements/Extinguisher/Cloud.java b/src/main/java/model/Elements/Extinguisher/Cloud.java index d097e0f..19524e1 100644 --- a/src/main/java/model/Elements/Extinguisher/Cloud.java +++ b/src/main/java/model/Elements/Extinguisher/Cloud.java @@ -30,6 +30,11 @@ public class Cloud extends Extinguisher { extinguish(firefighterBoard,newPosition); + for (Position neighbor : this.neighbour.getNeighbors().get(newPosition)) { + extinguish(firefighterBoard,neighbor); + modifiedPositions.add(neighbor); + } + return modifiedPositions; } diff --git a/src/main/java/model/Elements/Extinguisher/Extinguisher.java b/src/main/java/model/Elements/Extinguisher/Extinguisher.java index 7d45c88..fe39516 100644 --- a/src/main/java/model/Elements/Extinguisher/Extinguisher.java +++ b/src/main/java/model/Elements/Extinguisher/Extinguisher.java @@ -10,11 +10,12 @@ import util.TargetStrategy; import java.util.List; public abstract class Extinguisher implements model.Elements.element { + protected final TargetStrategy targetStrategy = new TargetStrategy(); protected Neighbour neighbour; - protected Position position; protected ModelElement element; + public Extinguisher(Position position){ this.position = position; } @@ -35,7 +36,6 @@ public abstract class Extinguisher implements model.Elements.element { if (board.getFires().containsKey(position)) { board.getFires().remove(position); } - } public abstract List<Position> update(Board<List<ModelElement>> firefighterBoard); diff --git a/src/main/java/model/Elements/Fire.java b/src/main/java/model/Elements/Fire.java index 7de2d84..a552a62 100644 --- a/src/main/java/model/Elements/Fire.java +++ b/src/main/java/model/Elements/Fire.java @@ -60,7 +60,7 @@ public class Fire implements element { return modifiedPositions; } - public List<Position>removeMountainAndRoads(Board<List<ModelElement>> firefighterBoard,Position position){ + private List<Position>removeMountainAndRoads(Board<List<ModelElement>> firefighterBoard,Position position){ List<Position>neighboursAvailable; neighboursAvailable = this.neighbour.getNeighbors().get(position); -- GitLab