feat: fenetre principal et dashboard pret

This commit is contained in:
2025-11-09 13:59:03 +01:00
parent ea260adbc7
commit da8dccc72f
4 changed files with 45 additions and 11 deletions

View File

@@ -1,3 +1,4 @@
import java.awt.BorderLayout;
import java.awt.Color; import java.awt.Color;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
@@ -29,12 +30,17 @@ public class Dashboard extends GameView
this.button = new JButton(); this.button = new JButton();
// ajout background // ajout background
setBackground(car.getColor()); frame.setBackground(car.getColor());
init(fn); init(fn);
frame.add(label); // mettre un layout (text au centre et bouton en bas)
frame.add(button); // this.setLayout(new BorderLayout());
// this.add(label, BorderLayout.CENTER);
// this.add(button, BorderLayout.SOUTH);
this.setLayout(new BorderLayout());
this.add(label, BorderLayout.CENTER);
this.add(button, BorderLayout.SOUTH);
} }
// fonction uniquement pour l'affichage dynamique // fonction uniquement pour l'affichage dynamique

View File

@@ -25,6 +25,7 @@ public abstract class GameView extends JComponent
frame.setContentPane(this); frame.setContentPane(this);
// visibilité de la fenetre // visibilité de la fenetre
frame.setVisible(true); frame.setVisible(true);
register();
} }
protected GameView register() protected GameView register()
@@ -43,6 +44,7 @@ public abstract class GameView extends JComponent
{ {
for (GameView o : vobs) for (GameView o : vobs)
{ {
System.out.println(o.getClass());
o.run(); o.run();
} }
} }

View File

@@ -3,13 +3,40 @@ import java.awt.Color;
public class Main { public class Main {
public static void main(String[] args) throws InterruptedException public static void main(String[] args) throws InterruptedException
{ {
Game game = new Game.Builder() // Game game = new Game.Builder()
.defaultMap() // .defaultMap()
.setPlayers(3) // .setPlayers(3)
.build(); // .build();
Integer[][] map = new Integer[][]
{
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -1, -1, 5, 0 },
{ 0, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2, 0, 0, -1, 0, 0, -1, 0 },
{ 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0 },
{ 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0 },
{ 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -1, -1, 2, 0, 0, -1, 0 },
{ 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0 },
{ 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0 },
{ 0, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -2, -3, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
};
game.run(); Map m = Map.fromInts(map);
// game.run();
// Dashboard d = new Dashboard(new Car(10, new State()), "Voiture 1", Color.BLUE, 500, 500, 10, 10); // Dashboard d = new Dashboard(new Car(10, new State()), "Voiture 1", null, Color.BLUE, 500, 500, 10, 10);
Car[] cars = new Car[] { new Car(m.getPathSize(), new State(), Color.PINK)};
System.out.println(cars[0].getLoop());
Track t = new Track(m, cars, null, 1080, 512, 0, 0);
Dashboard d = new Dashboard(cars[0], null, () -> true, 300, 300, 0, 0);
while(cars[0].getRound() < 1)
{
cars[0].run();
GameView.update();
Thread.sleep(500);
}
} }
} }

View File

@@ -14,7 +14,6 @@ public class Track extends GameView {
super(title, width, height, x, y); super(title, width, height, x, y);
this.map = map; this.map = map;
this.cars = cars; this.cars = cars;
register();
} }
@Override @Override