From f77fdb8737f322263e0e649982f54ccf54a742a8 Mon Sep 17 00:00:00 2001
From: Sarah CHERCHEM <ls_cherchem@esi.dz>
Date: Thu, 28 Nov 2024 21:04:55 +0100
Subject: [PATCH] BoardFireFighterBehavior : add the methode
 getMotorizedFighters

---
 src/main/java/controller/Controller.java          |  4 ++++
 src/main/java/model/BoardFireFighterBehavior.java | 12 ++++++++++++
 src/main/java/view/ViewElement.java               |  2 +-
 3 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java
index aa67273..767265b 100644
--- a/src/main/java/controller/Controller.java
+++ b/src/main/java/controller/Controller.java
@@ -89,6 +89,10 @@ public class Controller {
       if (element instanceof Cloud) {
         return ViewElement.CLOUD;
       }
+      if (element instanceof MotorizedFireFighter)
+      {
+        return ViewElement.MOTORIZED;
+      }
 
     }
     return ViewElement.EMPTY;
diff --git a/src/main/java/model/BoardFireFighterBehavior.java b/src/main/java/model/BoardFireFighterBehavior.java
index 60d8384..9c5c2ce 100644
--- a/src/main/java/model/BoardFireFighterBehavior.java
+++ b/src/main/java/model/BoardFireFighterBehavior.java
@@ -49,6 +49,13 @@ public class BoardFireFighterBehavior implements BoardBehavior{
         for (Cloud cloud : clouds) {
             cloudPositions.add(cloud.getPosition());
         }
+        // Pompiers motorisés
+        motorizedFighters = new ArrayList<>();
+        List<MotorizedFireFighter> motorizedFirefighters = motorizedFactory.createElements(rowCount, columnCount);
+        for (MotorizedFireFighter motorizedFirefighter : motorizedFirefighters) {
+            motorizedFighters.add(motorizedFirefighter.getPosition());
+        }
+
     }
 
 
@@ -157,6 +164,7 @@ public class BoardFireFighterBehavior implements BoardBehavior{
         List<Position> modifiedPositions = updateFirefighters();
         modifiedPositions.addAll(updateFires());
         modifiedPositions.addAll(updateClouds());
+        modifiedPositions.addAll(updateMotorized());
         incrementStep();
         return modifiedPositions;
     }
@@ -188,4 +196,8 @@ public class BoardFireFighterBehavior implements BoardBehavior{
     public List<Position> getCloudPositions() {
         return cloudPositions;
     }
+
+    public List<Position> getMotorizedFighters() {
+        return motorizedFighters;
+    }
 }
diff --git a/src/main/java/view/ViewElement.java b/src/main/java/view/ViewElement.java
index 00e3d1b..b9f1e85 100644
--- a/src/main/java/view/ViewElement.java
+++ b/src/main/java/view/ViewElement.java
@@ -3,7 +3,7 @@ package view;
 import javafx.scene.paint.Color;
 
 public enum ViewElement {
-  FIREFIGHTER(Color.BLUE), FIRE(Color.RED), EMPTY(Color.WHITE) ,  CLOUD(Color.GRAY),  MOUNTAIN(Color.GREEN), ROCKY(Color.BLACK);
+  FIREFIGHTER(Color.BLUE), FIRE(Color.RED), EMPTY(Color.WHITE) ,  CLOUD(Color.GRAY),MOTORIZED(Color.BLACK) , MOUNTAIN(Color.GREEN), ROCKY(Color.BLACK);
   final Color color;
   ViewElement(Color color) {
     this.color = color;
-- 
GitLab