Update the menu.
[koperkapel.git] / koperkapel / scenes / menu.py
index d8e343800cf4de0c8f9d27631afcf8fa932b8621..65128b9e49d3184028320914508063cbc727c877 100644 (file)
@@ -3,7 +3,7 @@
 from pgzero.constants import keys
 from ..actors.buttons import TextButton
 from ..actors.navigator import ActorNavigator
-from .base import Scene, ChangeSceneEvent, QuitEvent
+from .base import Scene, ChangeSceneEvent, WorldEvent, QuitEvent
 
 
 class MenuScene(Scene):
@@ -12,35 +12,32 @@ class MenuScene(Scene):
     def __init__(self):
         super().__init__()
         self._title = self.actors.add(TextButton("Main Menu"))
-        self._title.pos = (300, 200)
+        self._title.pos = (300, 100)
         self._nav = ActorNavigator()
         self._menu = [
-            TextButton("Play", action=self.change_to_level),
-            TextButton("View Last Generated Level",
-                       action=self.change_to_viewer),
-            TextButton("Manage Roaches", action=self.change_to_roaches),
+            TextButton("New Game", action=self.change_to_new_game),
+            TextButton("Resume", action=self.change_to_resume),
             TextButton("Credits", action=self.change_to_credits),
             TextButton("Quit", action=self.quit),
         ]
         for i, item in enumerate(self._menu):
-            item.pos = (300, 300 + (i * 100))
+            item.pos = (300, 200 + (i * 100))
             self.actors.add(item)
         self._nav.connect(
             self._menu, [keys.DOWN, keys.RIGHT], [keys.UP, keys.LEFT],
             wrap=True)
         self._nav.current.select()
 
-    def change_to_level(self):
-        from .level import LevelScene
-        return [ChangeSceneEvent(LevelScene('level1'))]
+    def change_to_resume(self):
+        from .level import GameLevelScene
+        return [ChangeSceneEvent(GameLevelScene())]
 
-    def change_to_viewer(self):
-        from .viewlevel import ViewLevelScene
-        return [ChangeSceneEvent(ViewLevelScene('map'))]
-
-    def change_to_roaches(self):
-        from .roaches import RoachesScene
-        return [ChangeSceneEvent(RoachesScene())]
+    def change_to_new_game(self):
+        from .level import GameLevelScene
+        return [
+            WorldEvent("reset"),
+            ChangeSceneEvent(GameLevelScene())
+        ]
 
     def change_to_credits(self):
         from .credits import CreditsScene