Création d'une fenêtre de jeu

This commit is contained in:
2024-11-15 14:35:01 +01:00
parent 3597408ebe
commit e897aaa3d5
2 changed files with 23 additions and 9 deletions

View File

@@ -25,18 +25,21 @@ public class Main {
* @param args Tableau de String contenant les arguments passé en paramètre au programme * @param args Tableau de String contenant les arguments passé en paramètre au programme
*/ */
public static void main(String[] args) { public static void main(String[] args) {
// Créer la fenêtre du jeu
JFrame gameFrame = new JFrame("Jeu - Dorfromantik");
// Créer la fenêtre des paramètres // Créer la fenêtre des paramètres
JFrame settingsFrame = new JFrame("Paramètres"); JFrame settingsFrame = new JFrame("Paramètres - Dorfromantik");
// Créer la fenêtre du tutoriel // Créer la fenêtre du tutoriel
JFrame howToPlayFrame = new JFrame("Comment jouer ?"); JFrame howToPlayFrame = new JFrame("Comment jouer ? - Dorfromantik");
// Menu principal // Menu principal
MusicPlayer.loadMusic(Musics.MAIN_MENU_MUSIC); MusicPlayer.loadMusic(Musics.MAIN_MENU_MUSIC);
MusicPlayer.playMusic(); MusicPlayer.playMusic();
MainMenu mainMenu = new MainMenu(); MainMenu mainMenu = new MainMenu();
MainMenuResizeController MainMenuResizeController = new MainMenuResizeController(mainMenu); MainMenuResizeController MainMenuResizeController = new MainMenuResizeController(mainMenu);
MainMenuButtonController MainMenuButtonController = new MainMenuButtonController(mainMenu,settingsFrame,howToPlayFrame); MainMenuButtonController MainMenuButtonController = new MainMenuButtonController(mainMenu,settingsFrame,howToPlayFrame,gameFrame);
// Fenêtre des paramètres // Fenêtre des paramètres
@@ -44,13 +47,14 @@ public class Main {
SettingsPanel settingsPanel = new SettingsPanel(mainMenu, settingsFrame); SettingsPanel settingsPanel = new SettingsPanel(mainMenu, settingsFrame);
settingsFrame.addWindowListener(windowListener); settingsFrame.addWindowListener(windowListener);
settingsFrame.add(settingsPanel); settingsFrame.add(settingsPanel);
settingsFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Fenêtre du tutoriel // Fenêtre du tutoriel
TutorialController tutorialController = new TutorialController(); TutorialController tutorialController = new TutorialController();
howToPlayFrame.addWindowListener(windowListener); howToPlayFrame.addWindowListener(windowListener);
howToPlayFrame.add(tutorialController.getTutorialPanel()); howToPlayFrame.add(tutorialController.getTutorialPanel());
howToPlayFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Fenêtre du jeu
gameFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
} }
} }

View File

@@ -18,28 +18,38 @@ public class MainMenuButtonController implements ActionListener {
private JFrame settingsFrame; private JFrame settingsFrame;
private JFrame howToPlayFrame; private JFrame howToPlayFrame;
private JFrame gameFrame;
public MainMenuButtonController(MainMenu mainMenu, JFrame settingsFrame, JFrame howToPlayFrame) { public MainMenuButtonController(MainMenu mainMenu, JFrame settingsFrame, JFrame howToPlayFrame, JFrame gameFrame) {
this.mainMenu = mainMenu; this.mainMenu = mainMenu;
// Ajouter les écouteurs d'événements sur les boutons // Ajouter les écouteurs d'événements sur les boutons
ButtonPanel buttonPanel = mainMenu.getButtonPanel(); ButtonPanel buttonPanel = mainMenu.getButtonPanel();
// Attacher les actions aux boutons // Attacher les actions aux boutons du menu principal
buttonPanel.getNewGameButton().addActionListener(this); buttonPanel.getNewGameButton().addActionListener(this);
buttonPanel.getContinueGameButton().addActionListener(this); buttonPanel.getContinueGameButton().addActionListener(this);
buttonPanel.getHowToPlayButton().addActionListener(this); buttonPanel.getHowToPlayButton().addActionListener(this);
buttonPanel.getSettingsButton().addActionListener(this); buttonPanel.getSettingsButton().addActionListener(this);
buttonPanel.getExitButton().addActionListener(this); buttonPanel.getExitButton().addActionListener(this);
// Créer la fenêtre des paramètres // Paramètrage de la fenêtre des paramètres
this.settingsFrame = settingsFrame; this.settingsFrame = settingsFrame;
this.settingsFrame.setLocationRelativeTo(null); this.settingsFrame.setLocationRelativeTo(null);
this.settingsFrame.setVisible(false); this.settingsFrame.setVisible(false);
this.settingsFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Créer la fenêtre du tutoriel // Paramètrage de la fenêtre du tutoriel
this.howToPlayFrame = howToPlayFrame; this.howToPlayFrame = howToPlayFrame;
this.howToPlayFrame.setLocationRelativeTo(null); this.howToPlayFrame.setLocationRelativeTo(null);
this.howToPlayFrame.setVisible(false); this.howToPlayFrame.setVisible(false);
this.howToPlayFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Paramètrage de la fenêtre du jeu
this.gameFrame = gameFrame;
this.gameFrame.setLocationRelativeTo(null);
this.gameFrame.setVisible(false);
this.gameFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
} }
@Override @Override