Skip to content
Snippets Groups Projects
Commit 0e6bc285 authored by melizzzz's avatar melizzzz
Browse files

nuage icones

parent 6e705dab
No related branches found
No related tags found
No related merge requests found
Pipeline #40644 failed
......@@ -20,6 +20,7 @@ import javafx.scene.control.ToggleGroup;
import javafx.util.Duration;
import javafx.util.Pair;
import model.Board;
import model.Entity;
import model.EntityFactory;
import model.Square;
import model.firefighterscenario.Cloud;
......@@ -91,6 +92,16 @@ public class Controller {
}
private ViewElement getViewElement(Square square) {
if (!square.getEntities().isEmpty()) {
for (Entity entity : square.getEntities()) {
if (entity instanceof Cloud) {
return new ViewElement(((Cloud) entity).getImage());
}else{
}
// Ajoutez ici des cas similaires pour d'autres entités comme Fire, FireFighter, etc.
}
}
return new ViewElement(square.getViewColor());
}
......
package model;
import javafx.scene.paint.Color;
import util.Position;
import java.util.List;
public class Road implements Entity{
private int age;
private Position position;
private final Color viewColor = Color.GREY;
private final int priority = 0;
@Override
public List<Position> nextTurn(Board<Square> board) {
return List.of();
}
@Override
public Position getPosition() {
return null;
}
@Override
public void setPosition(Position p) {
}
@Override
public int getAge() {
return 0;
}
@Override
public void setAge(int age) {
}
@Override
public void incrementAge() {
}
@Override
public Color getViewColor() {
return null;
}
@Override
public int getPriority() {
return 0;
}
}
......@@ -109,4 +109,10 @@ public class Cloud implements Entity{
}
public javafx.scene.image.Image getImage() {
return new javafx.scene.image.Image(getClass().getResource("/icons/img.png").toExternalForm());
}
}
package view;
import javafx.scene.image.Image;
import java.util.List;
......@@ -9,9 +10,25 @@ import util.Position;
public class FirefighterGrid extends Canvas implements Grid<ViewElement>{
//private void paintElementAtPosition(ViewElement element, Position position) {
// paintBox(position.x(), position.y(), element.getColor());
//}
private void paintElementAtPosition(ViewElement element, Position position) {
// Efface la case pour éviter les superpositions
clearBox(position.x(), position.y());
// Vérifie si une image est définie dans l'élément
if (element.getImage() != null) {
Image image = element.getImage();
getGraphicsContext2D().drawImage(image, position.y() * boxWidth, position.x() * boxHeight, boxWidth, boxHeight);
} else {
// Sinon, utilise une couleur
paintBox(position.x(), position.y(), element.getColor());
}
}
private int boxWidth;
private int boxHeight;
private int columnCount;
......
package view;
import javafx.scene.image.Image;
import javafx.scene.paint.Color;
public class ViewElement {
private final Color color;
private final Image image;
// Constructeur avec couleur uniquement
public ViewElement(Color color) {
this.color = color;
this.image = null;
}
// Constructeur avec image
public ViewElement(Image image) {
this.color = null;
this.image = image;
}
public Color getColor() {
return color;
}
public Image getImage() {
return image;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment