Rename roach management scene module.
[koperkapel.git] / koperkapel / scenes / menu.py
index c91c14213e99ae00226065d17129d96be90f1e55..a902d3ab3aa9be265a7c5f016ddf919132f0cc09 100644 (file)
@@ -3,9 +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):
@@ -14,17 +12,19 @@ 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_roach_management),
             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],
@@ -32,12 +32,19 @@ class MenuScene(Scene):
         self._nav.current.select()
 
     def change_to_level(self):
-        from .level import LevelScene
-        return [ChangeSceneEvent(LevelScene('level1'))]
+        from .level import GameLevelScene
+        return [ChangeSceneEvent(GameLevelScene())]
 
     def change_to_viewer(self):
         from .viewlevel import ViewLevelScene
-        return [ChangeSceneEvent(ViewLevelScene('map'))]
+        return [
+            WorldEvent("set", {"level.name": "map"}),
+            ChangeSceneEvent(ViewLevelScene())
+        ]
+
+    def change_to_roach_management(self):
+        from .roach_management import RoachesScene
+        return [ChangeSceneEvent(RoachesScene())]
 
     def change_to_credits(self):
         from .credits import CreditsScene