package linea; import javax.swing.JLabel; public class GestionnaireFinDePartie { private boolean estGameOver = false; private JLabel labGameOver; private GestionnaireScore gestionnaireBDD; private GestionnaireHistorique gestionnaireHistorique; public GestionnaireFinDePartie(JLabel labGameOver, GestionnaireScore gestionnaireBDD, GestionnaireHistorique gestionnaireHistorique) { this.labGameOver = labGameOver; this.gestionnaireBDD = gestionnaireBDD; this.gestionnaireHistorique = gestionnaireHistorique; } public void declencherGameOver(ZoneDessin ecran, String pseudo, int score) { estGameOver = true; ecran.arreter(); // on fige tout, plus d'animation labGameOver.setVisible(true); // on enregistre dans le classement seulement si y'a un pseudo if (pseudo != null && !pseudo.isEmpty()) { gestionnaireBDD.sauvegarderScore(pseudo, score); } // score == durée en secondes (1 pt par seconde, voir Jeu.actionPerformed) gestionnaireHistorique.sauvegarderPartie(pseudo, score, score); } public boolean estGameOver() { return estGameOver; } public void reinitialiser() { estGameOver = false; labGameOver.setVisible(false); } }