diff --git a/.gitignore b/.gitignore index 1f5573d91c8497ef9d7251837b0c8776f31670e2..54fbe89481f54adf5adf6bc1c01ecf653fb580fd 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ bin/ *.bin *.lock .gradle/8.10.2/executionHistory/executionHistory.bin +build/ \ No newline at end of file diff --git a/src/main/java/model/EmptySquare.java b/src/main/java/model/EmptySquare.java index 18550854de6f53af08379a42b4d19e4bac84a3c6..d0a73934b148c14e9d7a04e5071bf12451d6acc9 100644 --- a/src/main/java/model/EmptySquare.java +++ b/src/main/java/model/EmptySquare.java @@ -1,10 +1,12 @@ package model; +import javafx.scene.paint.Color; import util.Position; public class EmptySquare implements Entity{ private Position position; + private final Color viewColor = Color.WHITE; public EmptySquare(Position p){ this.position = p; } @@ -23,4 +25,7 @@ public class EmptySquare implements Entity{ this.position = p; } + public Color getViewColor(){ + return this.viewColor; + } } diff --git a/src/main/java/model/Entity.java b/src/main/java/model/Entity.java index ea52763fea21d2d1a26a832b84a0ba1796ce450c..05095f255324595e8c526390737b6bc7f94729bd 100644 --- a/src/main/java/model/Entity.java +++ b/src/main/java/model/Entity.java @@ -1,9 +1,11 @@ package model; +import javafx.scene.paint.Color; import util.Position; public interface Entity { public void nextTurn(Board<Entity> board); public Position getPosition(); public void setPosition(Position p); + public Color getViewColor(); } diff --git a/src/main/java/model/Fire.java b/src/main/java/model/Fire.java index b99a300869c34d01bb5e22da176e423d95389421..c35008271a0b0c94137ac0a13bef39ff01fcc3ee 100644 --- a/src/main/java/model/Fire.java +++ b/src/main/java/model/Fire.java @@ -1,9 +1,11 @@ package model; +import javafx.scene.paint.Color; import util.Position; public class Fire implements Entity{ Board<Entity> b; private Position position; + private final Color viewColor = Color.RED; public Fire(Position position, Board<Entity> b){ this.position = position; } @@ -20,4 +22,8 @@ public class Fire implements Entity{ public Position getPosition() { return this.position; } + + public Color getViewColor(){ + return this.viewColor; + } } diff --git a/src/main/java/model/FireFighter.java b/src/main/java/model/FireFighter.java index 442a43b08d5dfcd31174eb93f28b812cbf479a9b..aea07f0d517b5183eb7f06da7a7de5bd610d0f59 100644 --- a/src/main/java/model/FireFighter.java +++ b/src/main/java/model/FireFighter.java @@ -1,8 +1,10 @@ package model; +import javafx.scene.paint.Color; import util.Position; public class FireFighter implements Entity{ private Position position; + private final Color viewColor = Color.BLUE; public FireFighter(Position position){ this.position = position; @@ -26,6 +28,9 @@ public class FireFighter implements Entity{ public Position getPosition() { return this.position; } + public Color getViewColor(){ + return this.viewColor; + } } diff --git a/src/main/java/model/FireFighterScenario.java b/src/main/java/model/FireFighterScenario.java index 1ea0fd5eb7bb928c0e55fcb2e9409b1cd64f8b42..ac4255523df9c60463789f2e5edc1870992776a6 100644 --- a/src/main/java/model/FireFighterScenario.java +++ b/src/main/java/model/FireFighterScenario.java @@ -11,8 +11,13 @@ public class FireFighterScenario implements Board<Entity>{ private Matrix<Entity> matrix; private int step; - public FireFighterScenario(int boardSize){ - this.matrix = new Matrix<Entity>(); + public FireFighterScenario(int columns, int rows, int initialFireCount, int initialFireFightersCount){ + this.matrix = new Matrix<Entity>(columns, rows); + for(int x = 0; x < matrix.getRows(); x++){ + for(int y = 0; y < matrix.getColumns(); y++){ + matrix.set(x,y, new EmptySquare(new Position(x, y))); + } + } this.step = 0; } public Entity getState(Position position){ @@ -39,11 +44,11 @@ public class FireFighterScenario implements Board<Entity>{ public int rowCount(){ - return matrix.size(); + return matrix.getRows(); } public int columnCount(){ - return matrix.size(); // On considère que la matrice est toujours une matrice carré + return matrix.getColumns(); } public List<Position> updateToNextGeneration() { @@ -70,6 +75,7 @@ public class FireFighterScenario implements Board<Entity>{ public int stepNumber(){ + this.step++; return this.step; } }