diff --git a/src/linea/CampagneAutoroute.java b/src/linea/CampagneAutoroute.java index 0ff56df..e0d437f 100644 --- a/src/linea/CampagneAutoroute.java +++ b/src/linea/CampagneAutoroute.java @@ -18,21 +18,16 @@ public class CampagneAutoroute { jeu.horloge = new Timer(40, jeu); jeu.ecran.viderObjets(); - // --- 1. CONFIGURATION DE LA DIFFICULTÉ --- - // On récupère les paramètres depuis la BDD au lieu de les coder en dur + // On récupère les paramètres depuis la BDD double[] params = jeu.bdd.getParametresDifficulte(difficulte); double vitesse = params[0]; double pente = params[1]; int segments = (int) params[2]; - // --- 2. CRÉATION DES OBJETS - - // On passe la vitesse au fond pour qu'il défile au même rythme ! FondAutoroute fond = new FondAutoroute(vitesse); jeu.ecran.ajouterObjet(fond); - // On passe aussi la vitesse, la pente et les segments à la ligne jeu.laligne = new Ligne(vitesse, pente, segments); jeu.ecran.ajouterObjet(jeu.laligne); diff --git a/src/linea/CampagneEspace.java b/src/linea/CampagneEspace.java index 542fb29..e8be02f 100644 --- a/src/linea/CampagneEspace.java +++ b/src/linea/CampagneEspace.java @@ -25,23 +25,20 @@ public class CampagneEspace { double pente = params[1]; int segments = (int) params[2]; - // 1. Fond étoilé + FondEspace fond = new FondEspace(); jeu.ecran.ajouterObjet(fond); - // 2. Ligne de trajectoire jeu.laligne = new Ligne(vitesse, pente, segments); jeu.ecran.ajouterObjet(jeu.laligne); - // 3. Cercle Espace avec physique Lunaire (niveau 1) CercleEspace halo = new CercleEspace(0, 360, 1); jeu.ecran.ajouterObjet(halo); - // Liaisons contrôles jeu.demiCercleAvant = halo; jeu.demiCercleArriere = halo; - // UI et lancement + jeu.ecran.setGameOver(false); jeu.ecran.setVictoire(false); jeu.score = 0; diff --git a/src/linea/FondAutoroute.java b/src/linea/FondAutoroute.java index 8ed3bf4..073fda3 100644 --- a/src/linea/FondAutoroute.java +++ b/src/linea/FondAutoroute.java @@ -6,10 +6,8 @@ import java.awt.Graphics; public class FondAutoroute extends ObjetGraphique { private double decalage = 0; - // On ajoute une variable pour mémoriser la vitesse private double vitesseDefilement; - // On modifie le constructeur pour accepter la vitesse public FondAutoroute(double vitesse) { super(); this.vitesseDefilement = vitesse; @@ -17,12 +15,10 @@ public class FondAutoroute extends ObjetGraphique { @Override void Afficher(Graphics g) { - // ... (Garde exactement ton code d'affichage actuel avec les couleurs et les boucles for) ... - // Ciel de nuit urbaine g.setColor(new Color(20, 20, 45)); g.fillRect(0, 0, 800, 50); - // Asphalte de l'autoroute en bas + // Asphalte de l'autoroute g.setColor(new Color(30, 30, 30)); g.fillRect(0, 50, 800, 500); @@ -39,7 +35,6 @@ public class FondAutoroute extends ObjetGraphique { @Override void Animer() { - // On utilise la vitesse dynamique au lieu du 5.0 fixe decalage += vitesseDefilement; if (decalage >= 120) { diff --git a/src/linea/Ligne.java b/src/linea/Ligne.java index 7f2f108..1a6ea69 100644 --- a/src/linea/Ligne.java +++ b/src/linea/Ligne.java @@ -73,7 +73,7 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique } s = new Segment(x, y, dx, dy); - s.setCouleur(new Color(0.2f, 0.2f, 0.2f)); + s.setCouleur(new Color(0.5f, 0.5f, 0.5f)); x += dx; y += dy; diff --git a/src/linea/MenuHistorique.java b/src/linea/MenuHistorique.java index 1a3aaca..6d03dbc 100644 --- a/src/linea/MenuHistorique.java +++ b/src/linea/MenuHistorique.java @@ -47,7 +47,7 @@ public class MenuHistorique extends JPanel { public void rafraichirHistorique() { Object[][] data = jeu.bdd.getHistoriqueParties(); String[] columnNames = {"Identifiant", "Date", "Score", "Campagne", "Difficulté", "Durée (s)"}; - // Utilisation d'un DefaultTableModel pour rendre les cellules non éditables + // DefaultTableModel = rendre les cellules non éditables tableHistorique.setModel(new DefaultTableModel(data, columnNames) { @Override public boolean isCellEditable(int row, int column) { diff --git a/src/linea/MenuLeaderboard.java b/src/linea/MenuLeaderboard.java index ed48caf..0cfa2e2 100644 --- a/src/linea/MenuLeaderboard.java +++ b/src/linea/MenuLeaderboard.java @@ -47,7 +47,7 @@ public class MenuLeaderboard extends JPanel { public void rafraichirLeaderboard() { Object[][] data = jeu.bdd.getLeaderboardData(); String[] columnNames = {"Identifiant", "Score", "Date", "Campagne", "Difficulté"}; - // Utilisation d'un DefaultTableModel pour rendre les cellules non éditables + // DefaultTableModel = rendre les cellules non éditables leaderboardTable.setModel(new DefaultTableModel(data, columnNames) { @Override public boolean isCellEditable(int row, int column) { diff --git a/src/linea/MenuLogin.java b/src/linea/MenuLogin.java index b877616..67c1a12 100644 --- a/src/linea/MenuLogin.java +++ b/src/linea/MenuLogin.java @@ -71,7 +71,6 @@ public class MenuLogin extends JPanel { JOptionPane.showMessageDialog(this, "Cet identifiant est déjà pris ou une erreur est survenue.", "Erreur", JOptionPane.ERROR_MESSAGE); } }); -// Action pour quitter btnQuit.addActionListener(e -> { jeu.bdd.fermerConnexion(); System.exit(0); diff --git a/src/linea/MenuPrincipal.java b/src/linea/MenuPrincipal.java index 910c793..0651997 100644 --- a/src/linea/MenuPrincipal.java +++ b/src/linea/MenuPrincipal.java @@ -4,7 +4,6 @@ import java.awt.*; import javax.swing.*; public class MenuPrincipal extends JPanel { - private JButton btnPlay; private JButton btnCampaign; private JButton btnLeaderboard; private JButton btnHistorique; @@ -21,16 +20,12 @@ public class MenuPrincipal extends JPanel { titre.setAlignmentX(Component.CENTER_ALIGNMENT); // Création des Boutons - btnPlay = creerBouton("PLAY"); btnCampaign = creerBouton("CAMPAGNES"); btnLeaderboard = creerBouton("LEADERBOARD"); btnHistorique = creerBouton("HISTORIQUE"); btnQuit = creerBouton("QUIT"); // Actions - btnPlay.addActionListener(e -> jeu.lancerPartie()); - - btnCampaign.addActionListener(e -> jeu.afficherMenuCampagne()); btnLeaderboard.addActionListener(e -> jeu.afficherLeaderboard()); @@ -42,8 +37,6 @@ public class MenuPrincipal extends JPanel { // Mise en page (espacement vertical) add(Box.createVerticalGlue()); add(titre); - add(Box.createRigidArea(new Dimension(0, 50))); - add(btnPlay); add(Box.createRigidArea(new Dimension(0, 15))); add(btnCampaign); add(Box.createRigidArea(new Dimension(0, 15))); diff --git a/src/linea/Voiture.java b/src/linea/Voiture.java index 184022c..43e2268 100644 --- a/src/linea/Voiture.java +++ b/src/linea/Voiture.java @@ -22,12 +22,10 @@ public class Voiture extends Cercle { Graphics2D g2D = (Graphics2D) g; g2D.setStroke(new BasicStroke(5.0f)); - // DESSINER LE DEMI-CERCLE ARRIERE (Au fond) g2D.setColor(couleurArriere); - // Utilisation de rayon*2 pour la largeur et hauteur (cercle parfait) - g2D.draw(new Arc2D.Double(x - rayon, y - rayon, rayon * 2, rayon * 2, 90, 180, Arc2D.OPEN)); + g2D.draw(new Arc2D.Double(x - rayon, y - rayon, rayon * 2, rayon * 2, 90, 180, Arc2D.OPEN)); //(cercle parfait) - // DESSINER LA VOITURE (Au milieu) + // DESSINER LA VOITURE g.setColor(new Color(150, 50, 200)); g.fillRect((int)x - 20, (int)y - 5, 40, 12); @@ -41,7 +39,6 @@ public class Voiture extends Cercle { g.setColor(Color.YELLOW); g.fillOval((int)x + 15, (int)y - 2, 6, 6); - // DESSINER LE DEMI-CERCLE AVANT (Par-dessus) g2D.setColor(couleurAvant); g2D.draw(new Arc2D.Double(x - rayon, y - rayon, rayon * 2, rayon * 2, 90, -180, Arc2D.OPEN)); }