diff --git a/build/classes/java/main/model/Fire.class b/build/classes/java/main/model/Fire.class index a5cf903e81972d9987dda78d61de40208314c219..12744497c0b4168a756584b31df839866c40bdf5 100644 Binary files a/build/classes/java/main/model/Fire.class and b/build/classes/java/main/model/Fire.class differ diff --git a/build/classes/java/main/model/FireFactory.class b/build/classes/java/main/model/FireFactory.class index 868087536e9613fb1ae9bcfc3a45cc9d78803851..1663c2261a007eb99f47e6a3815e106f4ad6eca7 100644 Binary files a/build/classes/java/main/model/FireFactory.class and b/build/classes/java/main/model/FireFactory.class differ diff --git a/src/main/java/model/Fire.java b/src/main/java/model/Fire.java index 74e606852174dfeb8848e9a6e40753bbe2d0ccdf..388e294c81231ad175d7d6ffe18df8c174fa39d7 100644 --- a/src/main/java/model/Fire.java +++ b/src/main/java/model/Fire.java @@ -2,23 +2,19 @@ package model; import util.Position; -public class Fire { - private final Position position; // Position du feu sur le plateau. - +public class Fire extends BoardElement{ public Fire(Position position) { - this.position = position; - + super(position); } - // Récupère la position du feu. - public Position getPosition() { - return position; + @Override + public String getType() { + return "FIRE"; } - @Override public String toString() { return "Fire{" + diff --git a/src/main/java/model/FireFactory.java b/src/main/java/model/FireFactory.java index 44bc19838bff6dd2ae138f89beaa58398d569308..5b066af06cefbd9a6c91c5215bed2679f79ea43e 100644 --- a/src/main/java/model/FireFactory.java +++ b/src/main/java/model/FireFactory.java @@ -6,23 +6,24 @@ import java.util.ArrayList; import java.util.List; import java.util.Random; -public class FireFactory { +public class FireFactory implements ElementFactory<Fire>,PositionGenerator{ private final Random random; + private int count; - public FireFactory(Random random) { + public FireFactory(Random random, int count) { this.random = random; // Injecte un générateur aléatoire pour une flexibilité. + this.count=count; } /** * Crée une liste de feux avec des positions et intensités aléatoires. * - * @param count Le nombre de feux à générer. * @param rowCount Nombre de lignes du plateau. * @param columnCount Nombre de colonnes du plateau. * @return Une liste d'objets `Fire`. */ - public List<Fire> createFires(int count, int rowCount, int columnCount) { + public List<Fire> createElements(int rowCount, int columnCount) { List<Fire> fires = new ArrayList<>(); for (int i = 0; i < count; i++) { Position randomPosition = generateRandomPosition(rowCount, columnCount); @@ -38,9 +39,14 @@ public class FireFactory { * @param columnCount Nombre de colonnes. * @return Une position aléatoire. */ - private Position generateRandomPosition(int rowCount, int columnCount) { + @Override + public Position generateRandomPosition(int rowCount, int columnCount) { int row = random.nextInt(rowCount); int column = random.nextInt(columnCount); return new Position(row, column); } + + public int getCount() { + return count; + } }