Amélioration

This commit is contained in:
2024-11-16 00:42:03 +01:00
parent 5950dc724a
commit 848c446ee5
2 changed files with 23 additions and 23 deletions

View File

@@ -8,6 +8,8 @@ import fr.monkhanny.dorfromantik.enums.Musics;
import fr.monkhanny.dorfromantik.listeners.CloseWindowListener; import fr.monkhanny.dorfromantik.listeners.CloseWindowListener;
import fr.monkhanny.dorfromantik.gui.SettingsPanel; import fr.monkhanny.dorfromantik.gui.SettingsPanel;
import fr.monkhanny.dorfromantik.controller.TutorialController; import fr.monkhanny.dorfromantik.controller.TutorialController;
import fr.monkhanny.dorfromantik.controller.GameModeController;
import fr.monkhanny.dorfromantik.gui.GameModeSelectionPanel;
import javax.swing.JFrame; import javax.swing.JFrame;
@@ -54,8 +56,10 @@ public class Main {
howToPlayFrame.addWindowListener(howToPlayWindowListener); howToPlayFrame.addWindowListener(howToPlayWindowListener);
howToPlayFrame.add(tutorialController.getTutorialPanel()); howToPlayFrame.add(tutorialController.getTutorialPanel());
// Fenêtre du jeu // Fenêtre du choix des modes de jeu
gameFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); GameModeController gameModeController = new GameModeController();
GameModeSelectionPanel gameModeSelectionPanel = new GameModeSelectionPanel(gameModeController);
gameModeController.setGameModeSelectionPanel(gameModeSelectionPanel);
gameFrame.add(gameModeSelectionPanel);
} }
} }

View File

@@ -5,7 +5,6 @@ import fr.monkhanny.dorfromantik.gui.SettingsPanel;
import fr.monkhanny.dorfromantik.gui.MainMenu; import fr.monkhanny.dorfromantik.gui.MainMenu;
import fr.monkhanny.dorfromantik.gui.ButtonPanel; import fr.monkhanny.dorfromantik.gui.ButtonPanel;
import fr.monkhanny.dorfromantik.listeners.CloseWindowListener; import fr.monkhanny.dorfromantik.listeners.CloseWindowListener;
import fr.monkhanny.dorfromantik.gui.GameModeSelectionPanel;
import javax.swing.*; import javax.swing.*;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
@@ -19,9 +18,9 @@ public class MainMenuButtonController implements ActionListener {
private JFrame settingsFrame; private JFrame settingsFrame;
private JFrame howToPlayFrame; private JFrame howToPlayFrame;
private JFrame gameFrame; private JFrame gameModeFrame;
public MainMenuButtonController(MainMenu mainMenu, JFrame settingsFrame, JFrame howToPlayFrame, JFrame gameFrame) { public MainMenuButtonController(MainMenu mainMenu, JFrame settingsFrame, JFrame howToPlayFrame, JFrame gameModeFrame) {
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();
@@ -46,10 +45,10 @@ public class MainMenuButtonController implements ActionListener {
this.howToPlayFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.howToPlayFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
// Paramètrage de la fenêtre du jeu // Paramètrage de la fenêtre du jeu
this.gameFrame = gameFrame; this.gameModeFrame = gameModeFrame;
this.gameFrame.setLocationRelativeTo(null); this.gameModeFrame.setLocationRelativeTo(null);
this.gameFrame.setVisible(false); this.gameModeFrame.setVisible(false);
this.gameFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); this.gameModeFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
} }
@@ -80,22 +79,19 @@ public class MainMenuButtonController implements ActionListener {
} }
public void startNewGame() { public void startNewGame() {
// Créer un contrôleur pour le mode de jeu // Récupérer la taille et la position de la fenêtre du menu principal
GameModeController gameModeController = new GameModeController(); Dimension mainMenuSize = this.mainMenu.getSize();
Point mainMenuLocation = this.mainMenu.getLocation();
// Créer le panneau de sélection de mode de jeu // Ajuster la fenêtre des paramètres pour qu'elle ait la même taille et position
GameModeSelectionPanel gameModeSelectionPanel = new GameModeSelectionPanel(gameModeController); this.gameModeFrame.setSize(mainMenuSize);
this.gameModeFrame.setLocation(mainMenuLocation);
// Associer le panneau au contrôleur // Cacher la fenêtre du menu principal
gameModeController.setGameModeSelectionPanel(gameModeSelectionPanel); this.mainMenu.setVisible(false);
// Créer une nouvelle fenêtre pour la sélection de mode de jeu // Afficher la fenêtre des paramètres
JFrame gameModeFrame = new JFrame("Sélectionnez un mode de jeu"); this.gameModeFrame.setVisible(true);
gameModeFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
gameModeFrame.setSize(600, 400);
gameModeFrame.setLocationRelativeTo(null);
gameModeFrame.add(gameModeSelectionPanel);
gameModeFrame.setVisible(true);
} }