X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=koperkapel%2Fpgzapp.py;h=712bae7e9793256e716edf50d086f16bcf3155c8;hb=504eb9e5d15f5fce0158430a0c9195c29e28c7c0;hp=d703aaf16bc37a6d040fd58801f0a711217773ef;hpb=e14b3fe596763b16ad52b0504e93012063c49f07;p=koperkapel.git diff --git a/koperkapel/pgzapp.py b/koperkapel/pgzapp.py index d703aaf..712bae7 100644 --- a/koperkapel/pgzapp.py +++ b/koperkapel/pgzapp.py @@ -1,17 +1,44 @@ """ Pygame-zero application module. """ -TITLE = "Koperkapel" -WIDTH = 1024 -HEIGHT = 768 +import sys -from .scenes import menu +from .world import World +from .scenes.base import Engine +from .scenes.menu import MenuScene +from .constants import WIDTH, HEIGHT, TITLE -current_scene = menu.MenuScene() + +engine = Engine(sys.modules[__name__], MenuScene(), World()) def update(dt): - current_scene.update(dt) + engine.update(dt) def draw(): - current_scene.draw(screen) + engine.draw() + + +def on_mouse_down(pos, button): + engine.on_mouse_down(pos, button) + + +def on_mouse_up(pos, button): + engine.on_mouse_up(pos, button) + + +# NOTE: on_mouse_move is not hooked up because of +# https://bitbucket.org/lordmauve/pgzero/issues/41/ +# spellchecker-has-wrong-argument-names-for + + +def on_key_down(key, mod, unicode): + engine.on_key_down(key, mod, unicode) + + +def on_key_up(key, mod): + engine.on_key_up(key, mod) + + +def on_music_end(): + engine.on_music_end()