Select Git revision
Forked from
COUETOUX Basile / graphic-2020
Source project has a limited visibility.
-
GHOMARI Ilyes authoredGHOMARI Ilyes authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Cloud.java 1.08 KiB
package model.Elements.Extinguisher;
import model.Board.Board;
import model.Elements.ModelElement;
import util.Neighbour;
import util.Position;
import java.util.ArrayList;
import java.util.List;
public class Cloud extends Extinguisher {
public Cloud(Position position) {
super(position);
element = ModelElement.CLOUD;
}
public List<Position>update(Board<List<ModelElement>> firefighterBoard){
this.neighbour = new Neighbour(firefighterBoard);
List<Position> modifiedPositions = new ArrayList<>();
Position currentPosition = this.getPosition();
Position newPosition = this.neighbour.randomNeighbor(currentPosition);
this.setPosition(newPosition);
modifiedPositions.add(currentPosition);
modifiedPositions.add(newPosition);
extinguish(firefighterBoard,newPosition);
for (Position neighbor : this.neighbour.getNeighbors().get(newPosition)) {
extinguish(firefighterBoard,neighbor);
modifiedPositions.add(neighbor);
}
return modifiedPositions;
}
}