Skip to content
Snippets Groups Projects
Commit 32a173d8 authored by MEHDI's avatar MEHDI
Browse files

changing details

parent 8c788a95
No related branches found
No related tags found
No related merge requests found
Showing
with 24 additions and 58 deletions
package model;
import model.Extinguisher.Extinguisher;
import model.Obstacle.Obstacle;
import util.Position;
......@@ -34,7 +34,7 @@ public interface Board<S> {
Map<Position, Obstacle> getObstacles();
Map<Position, Extinguisher> getExtinguishers();
Map<Position, Fire> getFires();
......
......@@ -6,7 +6,7 @@ import java.util.List;
public interface Element {
boolean contains(List<Position>positions);
Position getPosition();
......
package model.Extinguisher;
import model.Board;
import model.Extinguisher.Extinguisher;
import model.ModelElement;
import util.Neighbour;
import util.Position;
......
......@@ -27,12 +27,6 @@ public abstract class Extinguisher implements Element {
this.position = position;
}
@Override
public boolean contains(List<Position> positions) {
return positions.contains(this.getPosition());
}
public ModelElement getElement(){
return this.element;
......
......@@ -2,7 +2,7 @@ package model.Extinguisher;
import model.Board;
import model.ModelElement;
import model.Obstacle.Montain;
import model.Obstacle.Mountain;
import model.Obstacle.Obstacle;
import util.Neighbour;
import util.Position;
......@@ -46,7 +46,7 @@ public class FireFighter extends Extinguisher {
}
for(Obstacle obstacle : firefighterBoard.getObstacles().values()){
if(obstacle instanceof Montain){
if(obstacle instanceof Mountain){
modifiedPositions.remove(obstacle.getPosition());
}
}
......
......@@ -3,7 +3,7 @@ package model.Extinguisher;
import model.Board;
import model.ModelElement;
import model.Obstacle.Montain;
import model.Obstacle.Mountain;
import model.Obstacle.Obstacle;
import util.Neighbour;
import util.Position;
......@@ -43,7 +43,7 @@ public class MotorizedFireFighter extends Extinguisher {
}
for (Obstacle obstacle : firefighterBoard.getObstacles().values()) {
if (obstacle instanceof Montain) {
if (obstacle instanceof Mountain) {
modifiedPositions.remove(obstacle.getPosition());
}
}
......
package model;
import model.Obstacle.Montain;
import model.Obstacle.Mountain;
import model.Obstacle.Obstacle;
import model.Obstacle.Road;
import util.Neighbour;
......@@ -57,11 +57,6 @@ public class Fire implements Element {
}
return modifiedPositions;
}
public boolean contains(List<Position> positions) {
return positions.contains(this.getPosition());
}
public List<Position>removeMountainAndRoads(Board<List<ModelElement>> firefighterBoard,Position position){
List<Position>neighboursAvailable;
......@@ -70,7 +65,7 @@ public class Fire implements Element {
if(firefighterBoard.stepNumber()%4==0){
List<Position>MountainAndRoadsPositions = new ArrayList<>();
for(Obstacle obstacle : firefighterBoard.getObstacles().values()){
if(obstacle instanceof Road || obstacle instanceof Montain){
if(obstacle instanceof Road || obstacle instanceof Mountain){
MountainAndRoadsPositions.add(obstacle.getPosition());
neighboursAvailable.removeAll(MountainAndRoadsPositions);
}
......
......@@ -12,9 +12,9 @@ import java.util.*;
public class FirefighterBoard implements Board<List<ModelElement>> {
private final int columnCount;
private final int rowCount;
private Map<Position, Fire> fires = new HashMap<>();
private Map<Position, Extinguisher> extinguishers = new HashMap<>();
private Map<Position, Obstacle> obstacles = new HashMap<>();
private final Map<Position, Fire> fires = new HashMap<>();
private final Map<Position, Extinguisher> extinguishers = new HashMap<>();
private final Map<Position, Obstacle> obstacles = new HashMap<>();
private final Position[][] positions;
private int step = 0;
......@@ -112,10 +112,6 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
return this.fires;
}
@Override
public Map<Position, Extinguisher> getExtinguishers() {
return extinguishers;
}
public Map<Position, Obstacle> getObstacles() {
return obstacles;
......
......@@ -4,14 +4,12 @@ import model.Extinguisher.Cloud;
import model.Extinguisher.Extinguisher;
import model.Extinguisher.FireFighter;
import model.Extinguisher.MotorizedFireFighter;
import model.Obstacle.Montain;
import model.Obstacle.Mountain;
import model.Obstacle.Obstacle;
import model.Obstacle.Road;
import model.Obstacle.Rocaille;
import util.Position;
import java.util.ArrayList;
import java.util.List;
public enum ModelElement {
......@@ -41,7 +39,7 @@ public enum ModelElement {
case ROAD -> new Road(position);
case FIREFIGHTER -> new FireFighter(position);
case CLOUD -> new Cloud(position);
case MOUNTAIN -> new Montain(position);
case MOUNTAIN -> new Mountain(position);
case ROCAILLE -> new Rocaille(position);
case MOTORIZEDFIREFIGHTER -> new MotorizedFireFighter(position);
default -> throw new IllegalArgumentException("Unknown ModelElement: " + this);
......@@ -52,26 +50,13 @@ public enum ModelElement {
public static List<Integer> getInitialNumbers(){
List<Integer>listIninitalNumbers = new ArrayList<>();
for(ModelElement modelElement : ModelElement.values()){
listIninitalNumbers.add(modelElement.getInitialNumber());
}
return listIninitalNumbers;
}
public boolean isObstacle() {
if(this.getModelElementClass(null) instanceof Obstacle){
return true;
}
return false;
}
return this.getModelElementClass(null) instanceof Obstacle;
public boolean isExtinguisher(){
if(this.getModelElementClass(null) instanceof Extinguisher){
return true;
}
return false;
public boolean isExtinguisher(){
return this.getModelElementClass(null) instanceof Extinguisher;
}
......
package model.Obstacle;
import model.ModelElement;
import model.Obstacle.Obstacle;
import util.Position;
public class Montain extends Obstacle {
public Montain(Position position) {
public class Mountain extends Obstacle {
public Mountain(Position position) {
super(position);
element = ModelElement.MOUNTAIN;
}
......
......@@ -5,7 +5,6 @@ import model.Element;
import model.ModelElement;
import util.Position;
import java.util.ArrayList;
import java.util.List;
public abstract class Obstacle implements Element {
......@@ -14,10 +13,7 @@ public abstract class Obstacle implements Element {
public Obstacle(Position position){
this.position = position;
}
public boolean contains(List<Position> positions) {
return positions.contains(this.getPosition());
}
@Override
public Position getPosition() {
return this.position;
......
package model.Obstacle;
import model.ModelElement;
import model.Obstacle.Obstacle;
import util.Position;
public class Road extends Obstacle {
......
package model.Obstacle;
import model.ModelElement;
import model.Obstacle.Obstacle;
import util.Position;
public class Rocaille extends Obstacle {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment