From e8c2b3711fc10a6b94489d3bb155b56bd8fd027d Mon Sep 17 00:00:00 2001 From: a22021617 <mohamed.asfour@etu.univ-amu.fr> Date: Fri, 8 Nov 2024 11:37:12 +0100 Subject: [PATCH] jai regler un problem par rapport au TargetStrategy au niveau des imports et du coup new TargetStrategy marche --- src/main/java/model/FireFighter.java | 4 ++-- src/main/java/model/FirefighterBoard.java | 17 +++++++++++------ src/main/java/util/TargetStrategy.java | 2 +- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main/java/model/FireFighter.java b/src/main/java/model/FireFighter.java index 96ccf72..4b9866d 100644 --- a/src/main/java/model/FireFighter.java +++ b/src/main/java/model/FireFighter.java @@ -13,10 +13,10 @@ public class FireFighter { } - public void setFirefighterPositions(Position firefighterPositions) { + public void setFirefighterPosition(Position firefighterPositions) { this.firefighterPositions = firefighterPositions; } - public Position getFirefighterPositions() { + public Position getFirefighterPosition() { return firefighterPositions; } } diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java index b0f46a9..4c674b7 100644 --- a/src/main/java/model/FirefighterBoard.java +++ b/src/main/java/model/FirefighterBoard.java @@ -1,6 +1,7 @@ package model; import util.Position; +import util.TargetStrategy; import java.util.*; @@ -56,10 +57,12 @@ public class FirefighterBoard implements Board<List<ModelElement>> { public List<ModelElement> getState(Position position) { List<ModelElement> result = new ArrayList<>(); for (FireFighter firefighter : firefighter) - if (firefighter.getFirefighterPositions().equals(position)) + if (firefighter.getFirefighterPosition().equals(position)) result.add(ModelElement.FIREFIGHTER); - if (fire.contains(position)) - result.add(ModelElement.FIRE); + + for (Fire fire: fire) + if (fire.getFirePositions().equals(position)) + result.add(ModelElement.FIRE); return result; } @@ -84,10 +87,12 @@ public class FirefighterBoard implements Board<List<ModelElement>> { List<Position> modifiedPositions = new ArrayList<>(); if (step % 2 == 0) { List<Position> newFirePositions = new ArrayList<>(); - for (Position fire : firePositions) { + for (Fire fire : fire) { newFirePositions.addAll(neighbors.get(fire)); } - firePositions.addAll(newFirePositions); + for(Position position : newFirePositions) { + fire.add(new Fire(position)); + } modifiedPositions.addAll(newFirePositions); } return modifiedPositions; @@ -102,7 +107,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> { private List<Position> updateFirefighters() { List<Position> modifiedPosition = new ArrayList<>(); List<Position> firefighterNewPositions = new ArrayList<>(); - for (Position firefighterPosition : firefighterPositions) { + for (FireFighter firefighterPosition : firefighter) { Position newFirefighterPosition = targetStrategy.neighborClosestToFire(firefighterPosition, firePositions, neighbors); diff --git a/src/main/java/util/TargetStrategy.java b/src/main/java/util/TargetStrategy.java index 5831867..071869c 100644 --- a/src/main/java/util/TargetStrategy.java +++ b/src/main/java/util/TargetStrategy.java @@ -1,4 +1,4 @@ -package model; +package util; import util.Position; -- GitLab