Better layer management.
[koperkapel.git] / koperkapel / scenes / roaches.py
index 923e6fde263e3e62da76aed366fab01b048abf69..09169f3ac80bd4566933c8dd97b50303fc110144 100644 (file)
@@ -1,7 +1,9 @@
 """ Roach management scene. """
 
 from pgzero.constants import keys
+from pgzero.actor import Actor
 from ..actors.buttons import TextButton
+from ..constants import WIDTH, HEIGHT
 from .base import Scene, ChangeSceneEvent
 
 
@@ -10,8 +12,18 @@ class RoachesScene(Scene):
 
     def __init__(self):
         super().__init__()
-        self.actors.add_layer("roaches", level=10)
         self._roach_actors = {}
+        self._roaches = self.actors.add_layer("roaches", level=10)
+        self._pads = self.actors.add_layer("pads", level=5)
+        self._init_pads()
+
+    def _init_pads(self):
+        self._roach_pad = self._pads.add(
+            Actor("roach_management/roach_pad"))
+        self._roach_pad.pos = (WIDTH * (7/8), HEIGHT * (1/4))
+        self._inventory_pad = self._pads.add(
+            Actor("roach_management/inventory_pad"))
+        self._inventory_pad.pos = (WIDTH * (7/8), HEIGHT * (3/4))
 
     def update(self, world, dt):
         for i, roach in enumerate(world.roaches):
@@ -24,7 +36,7 @@ class RoachesScene(Scene):
                         roach.attributes.items()),
                     )))
                 self._roach_actors[roach.name] = actor
-                self.actors.add(actor, layer="roaches")
+                self._roaches.add(actor)
             # TODO: remove missing roaches
             actor.pos = (300, 100 + i * 100)