diff --git a/src/main/java/model/Cloud.java b/src/main/java/model/Cloud.java
index 04d6a05926f658c70f85251331c70e925c26d904..4a741ab0944e82950b1b6225170c76a723b9f03b 100644
--- a/src/main/java/model/Cloud.java
+++ b/src/main/java/model/Cloud.java
@@ -31,7 +31,7 @@ public class Cloud implements Entity{
     @Override
     public List<Position> nextTurn(Board<Square> b) {
         List<Position> adjacentPositions = PositionUtil.generateAdjacentPositions(position, b);
-
+        adjacentPositions.removeIf( p -> b.doesSquareContainEntity(p, Cloud.class));
         // Filtrer pour obtenir uniquement les positions qui ne contiennent pas de pompier
         adjacentPositions.removeIf(p -> b.doesSquareContainEntity(p, FireFighter.class));
 
diff --git a/src/main/java/model/FireFighterScenario.java b/src/main/java/model/FireFighterScenario.java
index 7542286945f64dd827829c89014ba4ba193cd1eb..091276f10733fdfde65ca8b62087195173c9fc57 100644
--- a/src/main/java/model/FireFighterScenario.java
+++ b/src/main/java/model/FireFighterScenario.java
@@ -68,7 +68,7 @@ public class FireFighterScenario extends EntityScenario implements Board<Square>
             }
           }
 
-          if (fireFighterCount < initialFireFightersCount && random.nextInt(100) < chance) {
+          if (cloudCount < intialCloudCount && random.nextInt(100) < chance) {
             setSquare(new Square(pos, new Cloud(pos, this, 1)));
             cloudCount++;
             if (fireCount == initialFireCount && fireFighterCount == initialFireFightersCount && cloudCount == initialCloudCount) {