Skip to content
Snippets Groups Projects
Commit 16cb216b authored by Yanis O's avatar Yanis O Committed by melizzzz
Browse files

Ajout de setter/getter pour Position dans l'interface Entity

parent cac78e2b
No related branches found
No related tags found
No related merge requests found
package app; package app;
import java.io.IOException;
import java.net.URL;
import controller.Controller; import controller.Controller;
import javafx.application.Platform; import javafx.application.Platform;
import javafx.fxml.FXMLLoader; import javafx.fxml.FXMLLoader;
...@@ -7,9 +10,6 @@ import javafx.scene.Parent; ...@@ -7,9 +10,6 @@ import javafx.scene.Parent;
import javafx.scene.Scene; import javafx.scene.Scene;
import javafx.stage.Stage; import javafx.stage.Stage;
import java.io.IOException;
import java.net.URL;
public class SimulatorApplication extends javafx.application.Application { public class SimulatorApplication extends javafx.application.Application {
private static final String VIEW_RESOURCE_PATH = "/view/view.fxml"; private static final String VIEW_RESOURCE_PATH = "/view/view.fxml";
private static final String APP_NAME = "Firefighter simulator"; private static final String APP_NAME = "Firefighter simulator";
...@@ -31,7 +31,7 @@ public class SimulatorApplication extends javafx.application.Application { ...@@ -31,7 +31,7 @@ public class SimulatorApplication extends javafx.application.Application {
} }
@Override @Override
public void start(Stage primaryStage) throws IOException { public void start(@SuppressWarnings("exports") Stage primaryStage) throws IOException {
initializePrimaryStage(primaryStage); initializePrimaryStage(primaryStage);
initializeView(); initializeView();
showScene(); showScene();
......
package model; package model;
import util.Position;
public interface Entity { public interface Entity {
public void nextTurn(Board board); public void nextTurn(Board<Entity> board);
public Position getPosition();
public void setPosition(Position p);
} }
...@@ -2,14 +2,22 @@ package model; ...@@ -2,14 +2,22 @@ package model;
import util.Position; import util.Position;
public class Fire implements Entity{ public class Fire implements Entity{
Board b; Board<Entity> b;
private Position position; private Position position;
public Fire(Position position, Board b){ public Fire(Position position, Board<Entity> b){
this.position = position; this.position = position;
} }
@Override @Override
public void nextTurn(Board board) { public void nextTurn(Board<Entity> board) {
// TODO
}
@Override
public void setPosition(Position p) {
this.position = p;
}
@Override
public Position getPosition() {
return this.position;
} }
} }
...@@ -7,7 +7,8 @@ public class FireFighter implements Entity{ ...@@ -7,7 +7,8 @@ public class FireFighter implements Entity{
public FireFighter(Position position){ public FireFighter(Position position){
this.position = position; this.position = position;
} }
public void nextTurn(Board b){
public void nextTurn(Board<Entity> b){
// Récupérer la position // Récupérer la position
//Si un feu est à proximité : éteindre les feux à x + 1 y, x y+1, x+1 y-1, x-1 y+1 //Si un feu est à proximité : éteindre les feux à x + 1 y, x y+1, x+1 y-1, x-1 y+1
//Sinon //Sinon
...@@ -16,5 +17,15 @@ public class FireFighter implements Entity{ ...@@ -16,5 +17,15 @@ public class FireFighter implements Entity{
// Ajouter un feu à x + 1 y, x y+1, x-1 y, x y-1 // Ajouter un feu à x + 1 y, x y+1, x-1 y, x y-1
} }
@Override
public void setPosition(Position p) {
this.position = p;
}
@Override
public Position getPosition() {
return this.position;
}
} }
package view; package view;
import java.util.List;
import javafx.scene.canvas.Canvas; import javafx.scene.canvas.Canvas;
import javafx.scene.paint.Color; import javafx.scene.paint.Color;
import javafx.util.Pair; import javafx.util.Pair;
import util.Position; import util.Position;
import java.util.List;
public class FirefighterGrid extends Canvas implements Grid<ViewElement>{ public class FirefighterGrid extends Canvas implements Grid<ViewElement>{
private void paintElementAtPosition(ViewElement element, Position position) { private void paintElementAtPosition(ViewElement element, Position position) {
paintBox(position.row(), position.column(), element.color); paintBox(position.x(), position.y(), element.color);
} }
private int boxWidth; private int boxWidth;
private int boxHeight; private int boxHeight;
...@@ -27,7 +27,7 @@ public class FirefighterGrid extends Canvas implements Grid<ViewElement>{ ...@@ -27,7 +27,7 @@ public class FirefighterGrid extends Canvas implements Grid<ViewElement>{
private void clear(List<Pair<Position, ViewElement>> positionedElements) { private void clear(List<Pair<Position, ViewElement>> positionedElements) {
for (Pair<Position, ViewElement> positionElement : positionedElements) { for (Pair<Position, ViewElement> positionElement : positionedElements) {
Position position = positionElement.getKey(); Position position = positionElement.getKey();
clearBox(position.row(), position.column()); clearBox(position.x(), position.y());
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment