Files
SAE31_2024/src/fr/monkhanny/dorfromantik/game/PauseGame.java

43 lines
1.7 KiB
Java
Raw Normal View History

2024-12-02 21:59:13 +01:00
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;
2024-12-03 10:14:33 +01:00
private ResumeButtonListener resumeButtonListener;
private MainMenuButtonListener mainMenuButtonListener;
private SettingsButtonListener settingsButtonListener;
2024-12-02 21:59:13 +01:00
public PauseGame(JFrame gameFrame, Game game) {
this.gameFrame = gameFrame;
this.game = game;
2024-12-03 10:14:33 +01:00
this.resumeButtonListener = new ResumeButtonListener(gameFrame);
this.mainMenuButtonListener = null; // Initialisé après la création de escapeMenu
this.settingsButtonListener = new SettingsButtonListener(gameFrame);
2024-12-02 21:59:13 +01:00
}
2024-12-03 10:14:33 +01:00
2024-12-02 21:59:13 +01:00
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ESCAPE) {
if (Options.isPaused == false) {
Options.isPaused = true;
if (escapeMenu == null || !escapeMenu.isVisible()) {
escapeMenu = new EscapeMenu(gameFrame, game);
2024-12-03 10:14:33 +01:00
this.mainMenuButtonListener = new MainMenuButtonListener(gameFrame, game, escapeMenu);
escapeMenu.setResumeButtonListener(this.resumeButtonListener);
escapeMenu.setMainMenuButtonListener(this.mainMenuButtonListener);
escapeMenu.setSettingsButtonListener(this.settingsButtonListener);
2024-12-02 21:59:13 +01:00
} else {
2024-12-03 10:14:33 +01:00
escapeMenu.setVisible(true);
2024-12-02 21:59:13 +01:00
}
2024-12-03 10:14:33 +01:00
escapeMenu.toFront();
2024-12-02 21:59:13 +01:00
}
}
}
2024-12-03 10:14:33 +01:00
}