diff --git a/linea/linea/Jeu.java b/linea/linea/Jeu.java
index 6e2afd0..1728361 100644
--- a/linea/linea/Jeu.java
+++ b/linea/linea/Jeu.java
@@ -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("
score : " + this.score + "
");
+
}
}
diff --git a/linea/linea/Ligne.java b/linea/linea/Ligne.java
index 0d5102e..bb3ffc1 100644
--- a/linea/linea/Ligne.java
+++ b/linea/linea/Ligne.java
@@ -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);
diff --git a/linea/linea/LineaAppli.java b/linea/linea/LineaAppli.java
index f97d88b..6ad9e01 100644
--- a/linea/linea/LineaAppli.java
+++ b/linea/linea/LineaAppli.java
@@ -1,6 +1,7 @@
package linea;
-public class LineaAppli {
+
+public class LineaAppli {
//-------------------------------------------------------------------------
// Classe de base de l'application, rien à modifier ici
//-------------------------------------------------------------------------
diff --git a/linea/linea/ZoneDessin.java b/linea/linea/ZoneDessin.java
index ebd186e..9543868 100644
--- a/linea/linea/ZoneDessin.java
+++ b/linea/linea/ZoneDessin.java
@@ -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);
+ }
}
}