38 lines
1.4 KiB
Java
38 lines
1.4 KiB
Java
|
|
package fr.monkhanny.dorfromantik.game;
|
||
|
|
|
||
|
|
import fr.monkhanny.dorfromantik.Options;
|
||
|
|
|
||
|
|
import java.awt.event.KeyAdapter;
|
||
|
|
import java.awt.event.KeyEvent;
|
||
|
|
import javax.swing.JFrame;
|
||
|
|
|
||
|
|
public class PauseGame extends KeyAdapter {
|
||
|
|
private JFrame gameFrame;
|
||
|
|
private Game game;
|
||
|
|
private EscapeMenu escapeMenu;
|
||
|
|
|
||
|
|
public PauseGame(JFrame gameFrame, Game game) {
|
||
|
|
this.gameFrame = gameFrame;
|
||
|
|
this.game = game;
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void keyPressed(KeyEvent e) {
|
||
|
|
if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
|
||
|
|
if (Options.isPaused == false) {
|
||
|
|
// Afficher le menu de pause seulement si aucun menu n'est déjà ouvert
|
||
|
|
Options.isPaused = true;
|
||
|
|
if (escapeMenu == null || !escapeMenu.isVisible()) {
|
||
|
|
escapeMenu = new EscapeMenu(gameFrame, game);
|
||
|
|
escapeMenu.setResumeButtonListener(new ResumeButtonListener(gameFrame));
|
||
|
|
escapeMenu.setMainMenuButtonListener(new MainMenuButtonListener(gameFrame, game));
|
||
|
|
escapeMenu.setSettingsButtonListener(new SettingsButtonListener(gameFrame));
|
||
|
|
} else {
|
||
|
|
escapeMenu.setVisible(true); // Si la fenêtre est déjà ouverte, la rendre visible
|
||
|
|
}
|
||
|
|
escapeMenu.toFront(); // Mettre la fenêtre au premier plan
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|