X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=koperkapel%2Fscenes%2Fbase.py;h=b6d6ff9bf86262a89345e0de38f8c0fadb162286;hb=e97ad367d4a1f7f9abcd790636b5b72ea312cb29;hp=9bad13cd9f03b9e1d172c9c977ae575002a51c88;hpb=f71f8d10a6b2fc28eb958f5035b5b8d082f8bf70;p=koperkapel.git diff --git a/koperkapel/scenes/base.py b/koperkapel/scenes/base.py index 9bad13c..b6d6ff9 100644 --- a/koperkapel/scenes/base.py +++ b/koperkapel/scenes/base.py @@ -77,9 +77,31 @@ class ChangeSceneEvent(Event): ENGINE_METHOD = "change_scene" +class Actors: + """ A list of actors. """ + + def __init__(self): + self._actors = [] + + def add(self, actor): + self._actors.append(actor) + return actor + + def remove(self, actor): + self._actors.remove(actor) + return actor + + def draw(self, screen): + for actor in self._actors: + actor.draw() # TODO: allow an option screen to be passed in + + class Scene: """ Base class for scenes. """ + def __init__(self): + self.actors = Actors() + def enter(self): pass @@ -90,7 +112,8 @@ class Scene: pass def draw(self, screen): - pass + screen.clear() + self.actors.draw(screen) def on_mouse_down(self, pos, button): pass