import pygame
import pygame.locals as pgl
+from naja.events import SceneChangeEvent
+
class Engine(object):
def __init__(self, surface, scene):
for ev in pygame.event.get():
if ev.type == pgl.QUIT:
return
- self._scene.handle_event()
+ elif SceneChangeEvent.matches(ev):
+ self.change_scene(ev.scene)
+ else:
+ self._scene.handle_event()
# TODO: work
pygame.display.flip()
+
+ def change_scene(self, scene):
+ self._scene.exit()
+ self._scene = scene
+ self._scene.enter()