fonctionnalite pour perdre

This commit is contained in:
lecointre
2026-04-07 13:54:01 +02:00
parent dc266ea40f
commit a5d3c87427
2 changed files with 44 additions and 54 deletions
+34
View File
@@ -84,4 +84,38 @@ public class FenetreJeu extends JFrame {
}
}
}
/**
* Affiche la grille de fin de partie en cas de défaite, comme demandé dans le sujet.
* @param lExplose la ligne de la mine qui a fait BOUM
* @param cExplose la colonne de la mine qui a fait BOUM
*/
public void afficherDefaite(int lExplose, int cExplose) {
for (int i = 0; i < grille.getLignes(); i++) {
for (int j = 0; j < grille.getColonnes(); j++) {
Case c = grille.getCase(i, j);
JButton btn = boutons[i][j];
// On désactive le bouton pour empêcher de cliquer dessus
btn.setEnabled(false);
// 1. La case dont la mine a "sauté"
if (i == lExplose && j == cExplose) {
btn.setText("BOUM");
btn.setBackground(Color.RED);
}
// 2. Les cases minées non marquées (les bombes oubliées)
else if (c.isMinee() && c.getMarqueur() != 1) {
btn.setText("M");
btn.setBackground(Color.ORANGE);
}
// 3. Les cases marquées non minées (les fausses pistes)
else if (!c.isMinee() && c.getMarqueur() == 1) {
btn.setText("X"); // Un X pour dire "Erreur"
btn.setBackground(Color.YELLOW);
}
// Si la case ne rentre pas dans ces cas, on la laisse tranquille
}
}
}
} // <--- L'accolade finale est bien ici maintenant !