le jeux s arrête+ game over

This commit is contained in:
2026-02-17 12:44:43 +01:00
parent f0db5f43ad
commit e3b3fc5f62
4 changed files with 20 additions and 6 deletions

View File

@@ -34,8 +34,9 @@ public class Jeu implements KeyListener, ActionListener{
protected double score=0;
// un label qui servira à afficher le score
protected JLabel labScore;
protected JLabel labScore;
protected boolean jeuCommence = false;
//-------------------------------------------------------------------------
// METHODES
@@ -151,6 +152,7 @@ public class Jeu implements KeyListener, ActionListener{
// A FAIRE : si la ligne est dans le cercle, on augmente le score, sinon on le remet à 0
if(verification){
this.score += 10;
this.jeuCommence = true; // Le jeu commence dès que la ligne est dans le cercle
}else{
this.score = this.score;
@@ -159,9 +161,14 @@ public class Jeu implements KeyListener, ActionListener{
// NB: Le jeu commence quand la ligne est dans le cercle
// Au début le ligne n'est pas dans le cercle car la ligne est à droite du cercle, et elle se déplace vers la gauche
//-------------------------------------------------------------------------------------------------------------------
if (this.jeuCommence) {
this.horloge.stop(); // 1. Arrêter le temps
this.ecran.partiePerdue = true; // 2. Signaler à l'écran
this.ecran.repaint(); // 3. Forcer l'affichage du texte
}
}
labScore.setText("<html><h3>score : " + this.score + "</h3></html>");
}
}

View File

@@ -12,7 +12,7 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
//-------------------------------------------------------------------------
// PROPRIETES
//-------------------------------------------------------------------------
// nb de Segments qui composent la ligne
protected int nbSegments = 400;
@@ -145,6 +145,7 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
// Le point i du segment courant est dans le cercle, on peut continuer à vérifier les autres points du segment
this.SegCourant.setCouleur(Color.GREEN);
dansCercle = true;
break;
}else{
// On peut s'arrêter dès qu'on trouve un point hors du cercle, car le segment courant n'est plus dans le cercle
this.SegCourant.setCouleur(Color.RED);

View File

@@ -1,6 +1,7 @@
package linea;
public class LineaAppli {
public class LineaAppli {
//-------------------------------------------------------------------------
// Classe de base de l'application, rien à modifier ici
//-------------------------------------------------------------------------

View File

@@ -16,7 +16,7 @@ public class ZoneDessin extends JPanel { // hérite d'une classe du frameWork st
//-------------------------------------------------------------------------
// PROPRIETES
//-------------------------------------------------------------------------
public boolean partiePerdue = false;
// un booleen qui permet d'arreter l'animation (suspendre)
protected boolean estArrete = false;
@@ -104,6 +104,11 @@ public class ZoneDessin extends JPanel { // hérite d'une classe du frameWork st
for(ObjetGraphique obj: listeObjets){
obj.Afficher(g); //Chaque objet se dessine lui-même
}
if (this.partiePerdue) {
g.setColor(Color.RED);
g.setFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 50));
g.drawString("GAME OVER", 250, 300);
}
}
}