diff --git a/src/main/java/app/SimulatorApplication.java b/src/main/java/app/SimulatorApplication.java index bbd21177c5517a1dc4bc9761b70892cca494217a..10fa4af1b221ac2dd223eb45bd7fbe5a8b97fa48 100644 --- a/src/main/java/app/SimulatorApplication.java +++ b/src/main/java/app/SimulatorApplication.java @@ -13,15 +13,15 @@ import javafx.stage.Stage; public class SimulatorApplication extends javafx.application.Application { private static final String VIEW_RESOURCE_PATH = "/view/view.fxml"; private static final String APP_NAME = "Firefighter simulator"; - private static final int ROW_COUNT = 50; - private static final int COLUMN_COUNT = 50; + private static final int ROW_COUNT = 40; + private static final int COLUMN_COUNT = 40; private static final int BOX_WIDTH = 15; private static final int BOX_HEIGHT = 15; public static final int INITIAL_FIRE_COUNT = 8; - public static final int INITIAL_FIREFIGHTER_COUNT = 6; + public static final int INITIAL_FIREFIGHTER_COUNT = 12; public static final int INITIAL_MOTORIZED_FIREFIGHTER_COUNT = 8; - public static final int INITIAL_CLOUD_COUNT = 20; - public static final int INITIAL_MOUNTAIN_COUNT= 20; + public static final int INITIAL_CLOUD_COUNT = 8; + public static final int INITIAL_MOUNTAIN_COUNT= 6; public static final int TURNS_FOR_SPAWNING_AIRTANKER = 10; private Stage primaryStage; diff --git a/src/main/java/controller/Controller.java b/src/main/java/controller/Controller.java index 4c076feedda8d8652a06253f1c78b252c0d91a5e..97a8c819e04f4036c399b435a844740cfc98727f 100644 --- a/src/main/java/controller/Controller.java +++ b/src/main/java/controller/Controller.java @@ -25,10 +25,13 @@ import model.Entity; import model.EntityFactory; import model.Model; import model.Square; -import model.doctorviruspatient.Doctor; -import model.doctorviruspatient.DoctorVirusPatientScenario; -import model.doctorviruspatient.Patient; -import model.doctorviruspatient.Virus; +import model.firefighterscenario.Cloud; +import model.firefighterscenario.Fire; +import model.firefighterscenario.FireFighter; +import model.firefighterscenario.FireFighterScenario; +import model.firefighterscenario.MotorizedFireFighter; +import model.firefighterscenario.Mountain; +import model.firefighterscenario.Rockery; import util.Position; import view.Grid; import view.ViewElement; @@ -129,6 +132,7 @@ public class Controller { public void restartButtonAction() { this.pause(); board.reset(); + System.gc(); pauseToggleButton.setSelected(true); repaintGrid(); } @@ -138,14 +142,14 @@ public class Controller { grid.setDimensions(columnCount, rowCount, squareWidth, squareHeight); Map<EntityFactory, Integer> entityCounts = new HashMap<EntityFactory, Integer>(); - /* + entityCounts.put((pos, b) -> new Fire(pos), initialFireCount); entityCounts.put((pos, b) -> new FireFighter(pos,b), initialFirefighterCount); entityCounts.put((pos, b) -> new MotorizedFireFighter(pos, b), initialMotorizedFirefightersCount); entityCounts.put((pos, b) -> new Cloud(pos, b), initialcloudCount); entityCounts.put((pos, b) -> new Mountain(pos), initialmountaincount); entityCounts.put((pos, b) -> new Rockery(pos), 3); - */ + /* entityCounts.put((pos, b) -> new Rock(pos), 10); @@ -153,12 +157,12 @@ public class Controller { entityCounts.put((pos, b) -> new Paper(pos), 10); */ - + /* entityCounts.put((pos, b) -> new Patient(pos), 70); entityCounts.put((pos, b) -> new Virus(pos), 6); entityCounts.put((pos, b) -> new Doctor(pos), 3); - - Model model = new DoctorVirusPatientScenario(columnCount, rowCount, entityCounts); + */ + Model model = new FireFighterScenario(columnCount, rowCount, entityCounts); this.setModel(model); repaintGrid(); } diff --git a/src/main/java/model/doctorviruspatient/DoctorVirusPatientScenario.java b/src/main/java/model/doctorviruspatient/DoctorVirusPatientScenario.java index 4f3cd35e0f4c17a7d65d870889dbfb7e651e5a4b..16e82608ee3584dc79aee63cc21369615de748dd 100644 --- a/src/main/java/model/doctorviruspatient/DoctorVirusPatientScenario.java +++ b/src/main/java/model/doctorviruspatient/DoctorVirusPatientScenario.java @@ -19,7 +19,7 @@ public class DoctorVirusPatientScenario extends Scenario implements Model{ public DoctorVirusPatientScenario(int columns, int rows, Map<EntityFactory, Integer> initialMap) { super(columns, rows, initialMap); } - + public List<Position> updateToNextGeneration() { ArrayList<Position> changedPositions = new ArrayList<>(); Iterator<Square> iterator = getMatrix().iterator(); diff --git a/src/main/java/view/FirefighterGrid.java b/src/main/java/view/FirefighterGrid.java index 5d043c8cf8fbb48fac5df25eaf81849618a0c0a2..99f055607051383a5f7fedf73a91849818306cbd 100644 --- a/src/main/java/view/FirefighterGrid.java +++ b/src/main/java/view/FirefighterGrid.java @@ -23,7 +23,6 @@ public class FirefighterGrid extends Canvas implements Grid<ViewElement>{ Image image = element.getImage(); getGraphicsContext2D().drawImage(image, position.y() * boxWidth, position.x() * boxHeight, boxWidth, boxHeight); } else { - // Sinon, utilise une couleur paintBox(position.x(), position.y(), element.getColor()); } } diff --git a/src/main/resources/view/icons/fire/avion.png b/src/main/resources/view/icons/fire/avion.png index 807a1d540612e13cec4f7718d47793bb83f5791f..6a5d9a690230ddb0a55e5f4050faf69af578341b 100644 Binary files a/src/main/resources/view/icons/fire/avion.png and b/src/main/resources/view/icons/fire/avion.png differ diff --git a/src/main/resources/view/icons/fire/camion.png b/src/main/resources/view/icons/fire/camion.png index c9eaf6adb1f1bfd2b96590d67d9279750df0f2a9..b3a361c84dc686238486079ae477cf346214528f 100644 Binary files a/src/main/resources/view/icons/fire/camion.png and b/src/main/resources/view/icons/fire/camion.png differ diff --git a/src/main/resources/view/icons/fire/flamme.png b/src/main/resources/view/icons/fire/flamme.png index 56350443b410de4cda4ce955e19dc58b73e9db60..0784e111e8761e9c2bacc9102eecc62b97bbf58b 100644 Binary files a/src/main/resources/view/icons/fire/flamme.png and b/src/main/resources/view/icons/fire/flamme.png differ diff --git a/src/main/resources/view/icons/fire/montagne.png b/src/main/resources/view/icons/fire/montagne.png index 6e8a74d4fa0ae870cde3b80fa307e5adc95ea45d..cf970e54796b833d6e28678344d48b48bf02f2ad 100644 Binary files a/src/main/resources/view/icons/fire/montagne.png and b/src/main/resources/view/icons/fire/montagne.png differ diff --git a/src/main/resources/view/icons/fire/nuage.png b/src/main/resources/view/icons/fire/nuage.png index 49bcbdb196a8c7b7b2ee867d5ef65876544c6526..308714e9a1c1acafcf230fef7f7e4a79ccc0e49d 100644 Binary files a/src/main/resources/view/icons/fire/nuage.png and b/src/main/resources/view/icons/fire/nuage.png differ diff --git a/src/main/resources/view/icons/fire/rochers.png b/src/main/resources/view/icons/fire/rochers.png index 339c588054ce5b849afdbb4a70a5db9ef17787d3..3c43a47397f45827363ed17e2bdbf1e651a3c864 100644 Binary files a/src/main/resources/view/icons/fire/rochers.png and b/src/main/resources/view/icons/fire/rochers.png differ diff --git a/src/main/resources/view/icons/fire/sapeur-pompier.png b/src/main/resources/view/icons/fire/sapeur-pompier.png index d2f7517c6b51ada2ffeef06ec66d492150cd899e..b2e592c7475ce7f1b4747300ee9e8f4f1fd1d345 100644 Binary files a/src/main/resources/view/icons/fire/sapeur-pompier.png and b/src/main/resources/view/icons/fire/sapeur-pompier.png differ