bouton campagne

This commit is contained in:
2026-02-10 16:34:22 +01:00
parent c52547120b
commit d10578c313
3 changed files with 90 additions and 15 deletions

View File

@@ -10,7 +10,10 @@ public class Jeu implements KeyListener, ActionListener {
protected CardLayout layout;
protected ZoneDessin ecran = new ZoneDessin();
// MENUS
protected MenuPrincipal menu;
protected MenuCampagne menuCampagne;
protected Cercle demiCercleAvant;
protected Cercle demiCercleArriere;
@@ -30,23 +33,23 @@ public class Jeu implements KeyListener, ActionListener {
conteneurPrincipal = new JPanel(layout);
menu = new MenuPrincipal(this);
menuCampagne = new MenuCampagne(this);
// Initialisation initiale
resetPartie();
// On ajoute l'action au bouton créé dans ZoneDessin
// On ajoute l'action au bouton "Retour" de la ZoneDessin (Game Over)
ecran.btnRetour.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 1. On change la carte visible vers le MENU
layout.show(conteneurPrincipal, "MENU");
afficherMenuPrincipal();
}
});
ecran.addKeyListener(this);
conteneurPrincipal.add(menu, "MENU");
conteneurPrincipal.add(menuCampagne, "CAMPAGNE");
conteneurPrincipal.add(ecran, "JEU");
fenetre.setContentPane(conteneurPrincipal);
@@ -56,6 +59,20 @@ public class Jeu implements KeyListener, ActionListener {
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void afficherMenuCampagne() {
layout.show(conteneurPrincipal, "CAMPAGNE");
}
public void afficherMenuPrincipal() {
layout.show(conteneurPrincipal, "MENU");
}
public void lancerNiveau(int numeroNiveau) {
System.out.println("Lancement du niveau " + numeroNiveau);
// Ici tu pourras configurer la difficulté selon le niveau
lancerPartie();
}
public void lancerPartie() {
resetPartie();
layout.show(conteneurPrincipal, "JEU");
@@ -65,25 +82,20 @@ public class Jeu implements KeyListener, ActionListener {
}
private void resetPartie() {
if(horloge != null) {
horloge.stop();
}
horloge = new Timer(40, this);
demiCercleAvant = new Cercle(90, -180);
demiCercleArriere = new Cercle(90, 180);
laligne = new Ligne();
demiCercleArriere.setCouleur(new Color(0.8f, 0.0f, 0.0f));
demiCercleAvant.setCouleur(new Color(1.0f, 0.2f, 0.2f));
ecran.viderObjets();
ecran.ajouterObjet(demiCercleArriere);
ecran.ajouterObjet(demiCercleAvant);