diff --git a/.gradle/8.10.2/executionHistory/executionHistory.bin b/.gradle/8.10.2/executionHistory/executionHistory.bin index d9005d1777945712c21df336288f49b1536dbeeb..f7dac1e23abd3daef8a6c2631dbbe09a15cb204c 100644 Binary files a/.gradle/8.10.2/executionHistory/executionHistory.bin and b/.gradle/8.10.2/executionHistory/executionHistory.bin differ diff --git a/.gradle/8.10.2/executionHistory/executionHistory.lock b/.gradle/8.10.2/executionHistory/executionHistory.lock index 202fedd4a0c33dd7452e76ee653df263ef983031..888d9e28c71779fc7ea8fb00a4ce9f00363c2b0a 100644 Binary files a/.gradle/8.10.2/executionHistory/executionHistory.lock and b/.gradle/8.10.2/executionHistory/executionHistory.lock differ diff --git a/.gradle/8.10.2/fileHashes/fileHashes.bin b/.gradle/8.10.2/fileHashes/fileHashes.bin index 26237891b883d2efb33362eab616931d969fa5d2..b3f153f42dbe1965ebb8efa814fc6f8a2b3db7ba 100644 Binary files a/.gradle/8.10.2/fileHashes/fileHashes.bin and b/.gradle/8.10.2/fileHashes/fileHashes.bin differ diff --git a/.gradle/8.10.2/fileHashes/fileHashes.lock b/.gradle/8.10.2/fileHashes/fileHashes.lock index fd6eb11de62d8a1380c454eda64c76dbbd9426dd..8bd90179692335950fbced9a09de552d08a1d46b 100644 Binary files a/.gradle/8.10.2/fileHashes/fileHashes.lock and b/.gradle/8.10.2/fileHashes/fileHashes.lock differ diff --git a/.gradle/8.10.2/fileHashes/resourceHashesCache.bin b/.gradle/8.10.2/fileHashes/resourceHashesCache.bin index 37e3812235cfa7f2f06c68e37405e5053db2aa1d..1611dbceb6eb7b4c5c30a8da9951016d5659d02e 100644 Binary files a/.gradle/8.10.2/fileHashes/resourceHashesCache.bin and b/.gradle/8.10.2/fileHashes/resourceHashesCache.bin differ diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index 9eba45426e148904a2494131d499cc59676d57de..290ad14c351962a4d852abb814a948352c64aef0 100644 Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/build/classes/java/main/model/FirefighterBoard.class b/build/classes/java/main/model/FirefighterBoard.class index 476abb627665fca8fdb32894934b0362bbdf463b..ca42845dd5040257614039eb61ef71df52c822a2 100644 Binary files a/build/classes/java/main/model/FirefighterBoard.class and b/build/classes/java/main/model/FirefighterBoard.class differ diff --git a/build/classes/java/test/model/FirefighterBoardTest.class b/build/classes/java/test/model/FirefighterBoardTest.class index 6a1beb64df8a67fa29677182891acb75b0afbaa3..700fb0a6e745978391eecb01f5d4ea423662260d 100644 Binary files a/build/classes/java/test/model/FirefighterBoardTest.class and b/build/classes/java/test/model/FirefighterBoardTest.class differ diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 58ae24dcaf66a6cc3c32cff70f21ceaf68ec0956..cf72eab79aa673dfa0bd015910595c9e6381803e 100644 Binary files a/build/tmp/compileJava/previous-compilation-data.bin and b/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/src/main/java/model/FireTruckmovmentStrategy.java b/src/main/java/model/FireTruckmovmentStrategy.java index b544e9b5b72d7538075a1792cffc2e900e25fd31..d531544a80cd72cbeed35d141579f956dd5fce55 100644 --- a/src/main/java/model/FireTruckmovmentStrategy.java +++ b/src/main/java/model/FireTruckmovmentStrategy.java @@ -24,19 +24,18 @@ public class FireTruckmovmentStrategy implements Strategy { for (Position fireTruckPosition : fireTruckPositions) { Position firstStep = nextValidPosition(fireTruckPosition ); // First step - extinguishNearbyFires(firstStep, modifiedPositions); // Extinguish after first step + extinguishNearbyFires(firstStep, modifiedPositions); Position secondStep = nextValidPosition(firstStep); // Second step - extinguishNearbyFires(secondStep, modifiedPositions); // Extinguish after second step + extinguishNearbyFires(secondStep, modifiedPositions); - // Update positions newFirefighterPositions.add(secondStep); modifiedPositions.add(fireTruckPosition ); // Original position modifiedPositions.add(firstStep); // First step position modifiedPositions.add(secondStep); // Second step position } - fireTruckPositions = newFirefighterPositions; // Update firefighter positions + fireTruckPositions = newFirefighterPositions; return modifiedPositions; } diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java index e079b5953ae998606efe9c3410f52a8d18f85c0a..a593e4c4c9c460a48961564a2130306204f415f8 100644 --- a/src/main/java/model/FirefighterBoard.java +++ b/src/main/java/model/FirefighterBoard.java @@ -31,7 +31,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> { // Constructor for FirefighterBoard public FirefighterBoard(int columnCount, int rowCount, int initialFireCount, int initialFirefighterCount, int initialRoadCount, - int initialcloudCount, int initialmountainsCount, int initialFireTruckCount, int initialrocksCount) { + int initialcloudCount, int initialmountainsCount, int initialrocksCount,int initialFireTruckCount ) { this.columnCount = columnCount; this.rowCount = rowCount; this.initialFireCount = initialFireCount; @@ -224,7 +224,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> { case FIRE -> new SimpleFireSpreadStrategy(firePositions, neighbors,moutainsPositions,roadPositions, rocksPositions,step); case FIREFIGHTER -> new FirefighterMovementStrategy(firefighterPositions,firePositions,neighbors); case CLOUD -> new CloudStrategy(cloudPositions,firePositions,neighbors,rowCount,columnCount); - case FIRETRUCK -> new FirefighterMovementStrategy(fireTruckPositions,firePositions,neighbors); + case FIRETRUCK -> new FireTruckmovmentStrategy(fireTruckPositions,firePositions,neighbors); default -> throw new IllegalStateException("Type de modèle inconnu : " + element); }; modifiedPositions.addAll(strategy.update()); diff --git a/src/main/java/model/Initializer.java b/src/main/java/model/Initializer.java index 3fc0707522557576777fc8cd01ae47e64544b36a..cdf9a61349cd9e97b28023ab8cdd72311c517122 100644 --- a/src/main/java/model/Initializer.java +++ b/src/main/java/model/Initializer.java @@ -32,7 +32,7 @@ public class Initializer { private final Random randomGenerator = new Random(); - public Initializer(int columnCount, int rowCount, int initialFireCount, int initialFirefighterCount, int initialRoadCount,int initialcloudCount, int initialMoutainCount, int initialFireTruckCount,int initialRocksCount) { + public Initializer(int columnCount, int rowCount, int initialFireCount, int initialFirefighterCount, int initialRoadCount,int initialcloudCount, int initialMoutainCount, int initialRocksCount,int initialFireTruckCount) { this.columnCount = columnCount; this.rowCount = rowCount; this.initialFireCount = initialFireCount; diff --git a/src/test/java/model/FirefighterBoardTest.java b/src/test/java/model/FirefighterBoardTest.java index b06dd8d997826e23fc52541dbfcee35c3302d7b9..a9fcc623d6bf20f9e15781f2e22b79451b4c6be2 100644 --- a/src/test/java/model/FirefighterBoardTest.java +++ b/src/test/java/model/FirefighterBoardTest.java @@ -10,17 +10,17 @@ import static org.assertj.core.api.Assertions.*; public class FirefighterBoardTest { @Test void testColumnCount(){ - Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3); + Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3,3); assertThat(board.columnCount()).isEqualTo(20); } @Test void testRowCount(){ - Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3); + Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3,3); assertThat(board.rowCount()).isEqualTo(10); } @Test void testStepNumber(){ - Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3); + Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 1, 3,10,5,3,3,3); for(int index = 0; index < 10; index++){ assertThat(board.stepNumber()).isEqualTo(index); board.updateToNextGeneration(); @@ -29,7 +29,7 @@ public class FirefighterBoardTest { } @Test void testGetState_afterSet(){ - Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 0, 0,0,0,0,0); + Board<List<ModelElement>> board = new FirefighterBoard(20, 10, 0, 0,0,0,0,0,0); Position position = new Position(1,2); assertThat(board.getState(position)).isEmpty(); board.setState(List.of(ModelElement.FIRE), position);