lancerNiveaux

This commit is contained in:
2026-02-23 11:19:09 +01:00
parent f1d2f92aae
commit 0dae2808c7

View File

@@ -1,48 +1,58 @@
package linea; package linea;
import javax.swing.Timer; import javax.swing.Timer;
import java.awt.Color;
public class CampagneAutoroute { public class CampagneAutoroute {
protected Jeu jeu; // Référence au jeu principal protected Jeu jeu;
public CampagneAutoroute(Jeu j) { public CampagneAutoroute(Jeu j) {
this.jeu = j; this.jeu = j;
} }
public void lancerNiveau1() {
System.out.println("Lancement du niveau autoroute ...");
public void lancerNiveau(int difficulte) {
System.out.println("Lancement Autoroute - Difficulté : " + difficulte);
if(jeu.horloge != null) { if(jeu.horloge != null) { jeu.horloge.stop(); }
jeu.horloge.stop();
}
jeu.horloge = new Timer(40, jeu); jeu.horloge = new Timer(40, jeu);
jeu.ecran.viderObjets(); jeu.ecran.viderObjets();
// --- 1. CONFIGURATION DE LA DIFFICULTÉ ---
double vitesse = 5.0;
double pente = 30.0;
FondAutoroute fond = new FondAutoroute(); if (difficulte == 1) { // FACILE
vitesse = 4.0;
pente = 20.0;
} else if (difficulte == 2) { // MOYEN
vitesse = 8.0;
pente = 45.0;
} else if (difficulte == 3) { // DIFFICILE
vitesse = 12.0;
pente = 70.0;
}
// --- 2. CRÉATION DES OBJETS AVEC LA MÊME VITESSE ---
// On passe la vitesse au fond pour qu'il défile au même rythme !
FondAutoroute fond = new FondAutoroute(vitesse);
jeu.ecran.ajouterObjet(fond); jeu.ecran.ajouterObjet(fond);
jeu.laligne = new Ligne(); // La ligne // On passe aussi la vitesse (et la pente) à la ligne
jeu.laligne = new Ligne(vitesse, pente);
jeu.ecran.ajouterObjet(jeu.laligne); jeu.ecran.ajouterObjet(jeu.laligne);
Voiture maVoiture = new Voiture(); Voiture maVoiture = new Voiture();
jeu.ecran.ajouterObjet(maVoiture); jeu.ecran.ajouterObjet(maVoiture);
jeu.demiCercleAvant = maVoiture; jeu.demiCercleAvant = maVoiture;
jeu.demiCercleArriere = maVoiture; jeu.demiCercleArriere = maVoiture;
jeu.ecran.setGameOver(false); jeu.ecran.setGameOver(false);
jeu.score = 0; jeu.score = 0;
jeu.labScore.setText("<html><h3 style='color:white;'>score : 0</h3></html>"); jeu.labScore.setText("<html><h3 style='color:white;'>score : 0</h3></html>");
jeu.layout.show(jeu.conteneurPrincipal, "JEU"); jeu.layout.show(jeu.conteneurPrincipal, "JEU");
jeu.ecran.setFocusable(true); jeu.ecran.setFocusable(true);
jeu.ecran.requestFocusInWindow(); jeu.ecran.requestFocusInWindow();