fonctionnalite pour perdre
This commit is contained in:
@@ -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 !
|
||||
|
||||
Reference in New Issue
Block a user