Select Git revision
InstanceReader.java
Forked from
COUETOUX Basile / aroTP1
Source project has a limited visibility.
-
OUATTARA Sie authoredOUATTARA Sie authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Cloud.java 1.20 KiB
package model;
import util.Position;
import java.util.*;
public class Cloud {
private Position position;
private final Map<Position, List<Position>> neighbors;
private final Random randomGenerator = new Random();
public Cloud(Position startPosition, Map<Position, List<Position>> neighbors) {
this.position = startPosition;
this.neighbors = neighbors;
}
public void move() {
List<Position> validNeighbors = neighbors.get(position);
this.position = validNeighbors.get(randomGenerator.nextInt(validNeighbors.size()));
}
public void extinguishSurroundingFires(Fire fire) {
for (Position neighbor : neighbors.get(position)) {
fire.extinguishFire(neighbor); // Éteint les feux adjacents
}
}
public Position getPosition() {
return position;
}
public void protectFromFire(Fire fire) {
fire.getFirePositions().remove(position);
}
public void extinguishSurroundingFires(Set<Position> firePositions, Map<Position, List<Position>> neighbors) {
for (Position neighbor : neighbors.get(position)) {
Fire.extinguishFire(neighbor); // Éteint les feux adjacents
}
}
}