X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fengine.py;h=94ddeab24a055e9134e1c51e7fef68f2a877dd58;hb=18eaa15b16160df3dcd23dd2773603d1f2e179ce;hp=2278fa0e234de3f34aa505f7c206c267eeccbb30;hpb=9959d703e59a5baa3aaad6fd3d5de88385f7c3e0;p=naja.git diff --git a/naja/engine.py b/naja/engine.py index 2278fa0..94ddeab 100644 --- a/naja/engine.py +++ b/naja/engine.py @@ -1,7 +1,7 @@ import pygame import pygame.locals as pgl -from naja.events import SceneChangeEvent +from naja.events import SceneChangeEvent, QuitGameEvent class Engine(object): @@ -12,16 +12,21 @@ class Engine(object): def run(self): while True: for ev in pygame.event.get(): - if ev.type == pgl.QUIT: + if ev.type == pgl.QUIT or QuitGameEvent.matches(ev): + self.quit_game() return elif SceneChangeEvent.matches(ev): self.change_scene(ev.scene) else: - self._scene.handle_event() - # TODO: work + self._scene.handle_event(ev) + self._scene.render(self._surface) pygame.display.flip() def change_scene(self, scene): self._scene.exit() self._scene = scene self._scene.enter() + + def quit_game(self): + self._scene.exit() + self._scene = None