Skip to content
Snippets Groups Projects
Commit 75b3606a authored by CHERCHEM Sarah's avatar CHERCHEM Sarah
Browse files

Correction of the FireFactory class

parent ef86a13e
No related branches found
No related tags found
No related merge requests found
No preview for this file type
No preview for this file type
......@@ -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{" +
......
......@@ -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;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment