From 3bbc6584161e479ac35ff23ccb1fdf2468e23995 Mon Sep 17 00:00:00 2001
From: fheinrich <fheinrich@techfak.de>
Date: Fri, 23 Feb 2024 09:36:19 +0100
Subject: [PATCH] Press start button or enter key to go further in menus

---
 .../gui_2d_vis/overcooked_gui.py              | 30 ++++++++++++-------
 1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/overcooked_simulator/gui_2d_vis/overcooked_gui.py b/overcooked_simulator/gui_2d_vis/overcooked_gui.py
index 5316859d..0e24286b 100644
--- a/overcooked_simulator/gui_2d_vis/overcooked_gui.py
+++ b/overcooked_simulator/gui_2d_vis/overcooked_gui.py
@@ -152,9 +152,9 @@ class PyGameGUI:
             self.window_height_fullscreen,
         ) = pygame.display.get_desktop_sizes()[0]
 
-        if self.window_width_fullscreen >= 3840 and self.window_height_fullscreen >= 2160:
-            self.window_width_fullscreen /= 2
-            self.window_height_fullscreen /= 2
+        # if self.window_width_fullscreen >= 3840 and self.window_height_fullscreen >= 2160:
+        #     self.window_width_fullscreen /= 2
+        #     self.window_height_fullscreen /= 2
 
         self.window_width_windowed = self.min_width
         self.window_height_windowed = self.min_height
@@ -1420,13 +1420,8 @@ class PyGameGUI:
             case MenuStates.ControllerTutorial:
                 match event.ui_element:
                     case self.continue_button:
-                        self.menu_state = MenuStates.PreGame
-                        if self.CONNECT_WITH_STUDY_SERVER:
-                            self.send_tutorial_finished()
-                            self.start_study()
-                        else:
-                            self.stop_game("tutorial_finished")
-                        self.disconnect_websockets()
+                        self.exit_tutorial()
+
 
             ############################################
 
@@ -1523,12 +1518,15 @@ class PyGameGUI:
 
                     # Press key instead of mouse button press
                     if (
-                        pygame.JOYBUTTONDOWN and any([self.joysticks and self.joysticks[i].get_button(0) for i in range(len(self.joysticks))])
+                        event.type == pygame.JOYBUTTONDOWN and any([self.joysticks and self.joysticks[i].get_button(7) for i in range(len(self.joysticks))]) or event.type == pygame.KEYDOWN and event.key == pygame.K_RETURN
                     ):
                         match self.menu_state:
                             case MenuStates.Start:
                                 self.menu_state = MenuStates.ControllerTutorial
                                 self.update_screen_elements()
+                            case MenuStates.ControllerTutorial:
+                                self.exit_tutorial()
+                                self.update_screen_elements()
                             case MenuStates.PreGame:
                                 self.setup_game()
                                 self.set_game_size()
@@ -1578,6 +1576,16 @@ class PyGameGUI:
         pygame.quit()
         sys.exit()
 
+    def exit_tutorial(self):
+        self.menu_state = MenuStates.PreGame
+        if self.CONNECT_WITH_STUDY_SERVER:
+            self.send_tutorial_finished()
+            self.start_study()
+        else:
+            self.stop_game("tutorial_finished")
+        self.disconnect_websockets()
+
+
 
 def main(
     url: str,
-- 
GitLab