Mercurial > nagslang
changeset 16:fe1426d09074
Merge.
author | Simon Cross <hodgestar@gmail.com> |
---|---|
date | Sun, 01 Sep 2013 14:21:13 +0200 |
parents | 17b233a54651 (current diff) 980339c28b42 (diff) |
children | b0644173d0aa |
files | nagslang/constants.py |
diffstat | 3 files changed, 31 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/nagslang/__main__.py Sun Sep 01 14:19:31 2013 +0200 +++ b/nagslang/__main__.py Sun Sep 01 14:21:13 2013 +0200 @@ -5,6 +5,7 @@ from nagslang.options import parse_args from nagslang.constants import SCREEN +from nagslang.engine import Engine def main(): @@ -15,3 +16,7 @@ pygame.display.set_mode(SCREEN, pgl.SWSURFACE) #pygame.display.set_icon(load_image(...)) pygame.display.set_caption('Nagslang') + + screen = pygame.display.get_surface() + engine = Engine(screen) + engine.run()
--- a/nagslang/constants.py Sun Sep 01 14:19:31 2013 +0200 +++ b/nagslang/constants.py Sun Sep 01 14:21:13 2013 +0200 @@ -1,5 +1,5 @@ SCREEN = (800, 600) - +FPS = 40 DEFAULTS = dict( debug=False, sound=True,
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nagslang/engine.py Sun Sep 01 14:21:13 2013 +0200 @@ -0,0 +1,25 @@ +"""Top-level event dispatching and area transition.""" + +from pygame import event +from pygame import time +import pygame.locals as pyl + +from nagslang import constants + + +class Engine(object): + def __init__(self, screen): + self._screen = screen + self._clock = time.Clock() + self._fps = constants.FPS + + def run(self): + running = True + while running: + for ev in event.get(): + # TODO: dispatch these to an area + if ev.type == pyl.QUIT: + running = False + elif ev.type == pyl.KEYDOWN and ev.key == pyl.K_ESCAPE: + running = False + self._clock.tick(self._fps)