1 """ Roach management scene. """
3 from pgzero.constants import keys
4 from ..actors.buttons import TextButton
5 from .base import Scene, ChangeSceneEvent
8 class RoachesScene(Scene):
9 """ Roach management scene. """
13 self._roach_actors = {}
15 def update(self, world, dt):
16 for i, roach in enumerate(world.roaches):
17 if roach["name"] in self._roach_actors:
18 actor = self._roach_actors[roach["name"]]
20 actor = TextButton("%s [%s]" % (
22 ", ".join("%s=%s" % kv for kv in sorted(
23 roach["attributes"].items()),
25 self._roach_actors[roach["name"]] = actor
26 self.actors.add(actor)
27 # TODO: remove missing roaches
28 actor.pos = (300, 100 + i * 100)
30 def on_key_down(self, key, mod, unicode):
31 if key == keys.ESCAPE:
32 from .menu import MenuScene
33 return [ChangeSceneEvent(MenuScene())]