4 Commits

Author SHA1 Message Date
b715132d0d Resolve conflict 2026-02-17 14:39:05 +01:00
e31a726657 Merge branch 'Niveau_jeu' 2026-02-17 14:37:44 +01:00
74746c1ad7 init 13: add bdd niveaux 2026-02-17 14:30:08 +01:00
e3b3fc5f62 le jeux s arrête+ game over 2026-02-17 12:44:43 +01:00
4 changed files with 19 additions and 13 deletions

View File

@@ -34,11 +34,9 @@ public class Jeu implements KeyListener, ActionListener{
protected double score=0; protected double score=0;
// un label qui servira à afficher le score // un label qui servira à afficher le score
protected JLabel labScore; protected JLabel labScore;
// un label qui servira à afficher le niveau du jeu protected boolean jeuCommence = false;
protected JLabel labLevel;
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
// METHODES // METHODES
@@ -49,11 +47,7 @@ public class Jeu implements KeyListener, ActionListener{
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
public Jeu(){ public Jeu(){
// Gestion du score : a réactiver en fin de TP, inutile au début // Gestion du score : a réactiver en fin de TP, inutile au début
// Ajout du niveau du jeu
labLevel = new JLabel();
labLevel.setText("<html><h3>niveau : 1</h3></html>");
labLevel.setBounds(20, 50, 200, 50);
ecran.add(labLevel);
labScore = new JLabel(); labScore = new JLabel();
labScore.setText("<html><h3>score : 0</h3></html>"); labScore.setText("<html><h3>score : 0</h3></html>");
labScore.setBounds(20, 0, 200, 50); labScore.setBounds(20, 0, 200, 50);
@@ -167,9 +161,14 @@ public class Jeu implements KeyListener, ActionListener{
// NB: Le jeu commence quand la ligne est dans le cercle // 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 // 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>"); 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 // PROPRIETES
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
// nb de Segments qui composent la ligne // nb de Segments qui composent la ligne
protected int nbSegments = 400; protected int nbSegments = 400;
@@ -146,6 +146,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 // 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); this.SegCourant.setCouleur(Color.GREEN);
dansCercle = true; dansCercle = true;
break;
}else{ }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 // 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); this.SegCourant.setCouleur(Color.RED);

View File

@@ -1,6 +1,7 @@
package linea; package linea;
public class LineaAppli {
public class LineaAppli {
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
// Classe de base de l'application, rien à modifier ici // 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 // PROPRIETES
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
public boolean partiePerdue = false;
// un booleen qui permet d'arreter l'animation (suspendre) // un booleen qui permet d'arreter l'animation (suspendre)
protected boolean estArrete = false; 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){ for(ObjetGraphique obj: listeObjets){
obj.Afficher(g); //Chaque objet se dessine lui-même 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);
}
} }
} }