diff --git a/Rapport/Diagramme.png b/Rapport/Diagramme.png new file mode 100644 index 0000000000000000000000000000000000000000..486b73a07c8604dc550f34e0b7ca2302016cbcf4 Binary files /dev/null and b/Rapport/Diagramme.png differ diff --git a/Rapport/Rapport.pdf b/Rapport/Rapport.pdf new file mode 100644 index 0000000000000000000000000000000000000000..32ca7d1e2742a1894fc2ead8b4ad1954d5af5037 Binary files /dev/null and b/Rapport/Rapport.pdf differ diff --git a/src/main/java/app/SimulatorApplication.java b/src/main/java/app/SimulatorApplication.java index 99663c3b3a8d152d1fa123db550d79421fd51c0d..556638942ee125684aa0953eb243c7557e7f680e 100644 --- a/src/main/java/app/SimulatorApplication.java +++ b/src/main/java/app/SimulatorApplication.java @@ -17,7 +17,7 @@ public class SimulatorApplication extends javafx.application.Application { private static final int COLUMN_COUNT = 20; private static final int BOX_WIDTH = 30; private static final int BOX_HEIGHT = 30; - public static final int INITIAL_FIRE_COUNT = 3; + public static final int INITIAL_FIRE_COUNT = 10; public static final int INITIAL_FIREFIGHTER_COUNT = 6; public static final int INITIAL_CLOUD_COUNT = 6; public static final int INITIAL_MONTAIN_COUNT = 4; diff --git a/src/main/java/model/FireFighters.java b/src/main/java/model/FireFighters.java index 98cee1b10366b21c9a83bb8853168cf11ce78d7d..1d779e7fdafd88c9521b1aca0163a4182b923e23 100644 --- a/src/main/java/model/FireFighters.java +++ b/src/main/java/model/FireFighters.java @@ -6,62 +6,12 @@ import java.util.*; public class FireFighters extends AbstractFighter implements ModelElement { - /* private List<Position> fireFightersPositions; - public FireFighters() { - } - public void add(Position position){ - fireFightersPositions.add(position); - } - - public List<Position> getFireFightersPositions() { - return fireFightersPositions; - } - - - - - public void initializeElements(int initialFirefighterCount, int rowCount, int columnCount) { - this.rowCount=rowCount; - this.columnCount=columnCount; - fireFightersPositions = new ArrayList<>(); - for (int index = 0; index < initialFirefighterCount; index++) - fireFightersPositions.add(randomPosition()); - } - - - - public List<Position> updateFirefighters(Set<Position> firePositions, Montains mountains) { - List<Position> result = new ArrayList<>(); - List<Position> firefighterNewPositions = new ArrayList<>(); - for (Position firefighterPosition : fireFightersPositions) { - Position newFirefighterPosition = neighborClosestToFire(firefighterPosition,firePositions); - - if (firefighterNewPositions.contains(newFirefighterPosition) || mountains.getMontainsPositions().contains(newFirefighterPosition)){ - firefighterNewPositions.add(firefighterPosition); - extinguish(firefighterPosition, firePositions); - } - else { - firefighterNewPositions.add(newFirefighterPosition); - extinguish(newFirefighterPosition, firePositions); - } - result.add(firefighterPosition); - result.add(newFirefighterPosition); - List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream() - .filter(firePositions::contains).toList(); - for(Position firePosition : neighborFirePositions) - extinguish(firePosition,firePositions); - result.addAll(neighborFirePositions); - } - fireFightersPositions = firefighterNewPositions; - return result; - } - */ public FireFighters() { } diff --git a/src/main/java/model/ModelElement.java b/src/main/java/model/ModelElement.java index 1023ca9ed124f1102240f27a667fbf19ef63e465..0b609eceba863e471b3addc49b97d32289983411 100644 --- a/src/main/java/model/ModelElement.java +++ b/src/main/java/model/ModelElement.java @@ -5,5 +5,5 @@ import util.Position; import java.util.List; public interface ModelElement { - Position randomPosition(); + // Position randomPosition(); } diff --git a/src/main/java/model/Montains.java b/src/main/java/model/Montains.java index 68ce7fa79dfae85446b7df4bbe51056cf6bf5d5a..4e78ea8789c62683ea24f11ee8eec231761376b8 100644 --- a/src/main/java/model/Montains.java +++ b/src/main/java/model/Montains.java @@ -28,7 +28,7 @@ public class Montains extends BoardMethods implements ModelElement { for (int index = 0; index < initialMontainsCount; index++) { Position blockStart = randomPosition(); - int blockSize = 3; + int blockSize = 1; for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) { for (int colOffset = 0; colOffset < blockSize; colOffset++) { // Ajoutez chaque position du bloc à la liste des positions des montagnes diff --git a/src/main/java/model/Motorized_Firefighter.java b/src/main/java/model/Motorized_Firefighter.java index 883f13cfff6737bec1d4a3cba887fd8592c3537c..566a433682e795bb790f1be6545269fddd74d9f4 100644 --- a/src/main/java/model/Motorized_Firefighter.java +++ b/src/main/java/model/Motorized_Firefighter.java @@ -7,62 +7,7 @@ import java.util.List; import java.util.Set; public class Motorized_Firefighter extends AbstractFighter { -/* - private List<Position> Motorized_fireFightersPositions; - public Motorized_Firefighter() { - } - - public void add(Position position){ - Motorized_fireFightersPositions.add(position); - } - - public List<Position> getMotorized_fireFightersPositions() { - return Motorized_fireFightersPositions; - } - - - - - public void initializeElements(int initialFirefighterCount, int rowCount, int columnCount) { - this.rowCount=rowCount; - this.columnCount=columnCount; - Motorized_fireFightersPositions = new ArrayList<>(); - for (int index = 0; index < initialFirefighterCount; index++) - Motorized_fireFightersPositions.add(randomPosition()); - } - - - public List<Position> updateMotorized_firefighter(Set<Position> firePositions, Montains mountains) { - List<Position> result = new ArrayList<>(); - - for (int i = 0; i < 2; i++) { - List<Position> firefighterNewPositions = new ArrayList<>(); - - for (Position firefighterPosition : Motorized_fireFightersPositions) { - Position newFirefighterPosition = neighborClosestToFire(firefighterPosition, firePositions); - - if (firefighterNewPositions.contains(newFirefighterPosition) || mountains.getMontainsPositions().contains(newFirefighterPosition)) { - firefighterNewPositions.add(firefighterPosition); - extinguish(firefighterPosition, firePositions); - } else { - firefighterNewPositions.add(newFirefighterPosition); - extinguish(newFirefighterPosition, firePositions); - } - result.add(firefighterPosition); - result.add(newFirefighterPosition); - List<Position> neighborFirePositions = neighbors(newFirefighterPosition).stream() - .filter(firePositions::contains).toList(); - for (Position firePosition : neighborFirePositions) - extinguish(firePosition, firePositions); - result.addAll(neighborFirePositions); - } - Motorized_fireFightersPositions = firefighterNewPositions; - - } - return result; - } - */ public List<Position> updateMotorizedFirefighters(Set<Position> firePositions, Montains montains) { List<Position> result = new ArrayList<>(); diff --git a/src/main/java/model/Roads.java b/src/main/java/model/Roads.java index 00dacc5fd4a10b09510743853a91668ab135f44d..51d8b760a4ea8dc9bfc184a81cefe9d56a02314a 100644 --- a/src/main/java/model/Roads.java +++ b/src/main/java/model/Roads.java @@ -33,7 +33,7 @@ public class Roads extends BoardMethods implements ModelElement { Position blockStart = randomPosition(); // Définir la taille du bloc (5x5, par exemple) - int blockSize = 6; + int blockSize = 1; for (int rowOffset = 0; rowOffset < blockSize; rowOffset++) { for (int colOffset = 0; colOffset < 2; colOffset++) {