Mercurial > skaapsteker
view skaapsteker/__main__.py @ 20:f81e073fb8f5
Remove .json suffix from level defs.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sun, 03 Apr 2011 17:35:32 +0200 |
parents | 538d15e6cca1 |
children | 38d7670a469a |
line wrap: on
line source
"""Game main module. """ from constants import SCREEN, FREQ, BITSIZE, CHANNELS, BUFFER, DEBUG from engine import Engine from levelscene import LevelScene import pygame from pygame.locals import SWSURFACE import sys import optparse def parse_args(args): parser = optparse.OptionParser() parser.add_option("--no-sound", action="store_false", default=True, dest="sound", help="disable sound") if DEBUG: parser.add_option("--scene", type="str", default=None, dest="scene", help="initial scene") parser.add_option("--no-rects", action="store_false", default=True, dest="rects", help="disable debugging rects") opts, _ = parser.parse_args(args or []) return opts def main(): """Launch Nine Tales. """ opts = parse_args(sys.argv) pygame.display.init() pygame.font.init() if opts.sound: try: pygame.mixer.init(FREQ, BITSIZE, CHANNELS, BUFFER) except pygame.error, exc: raise # TODO: bail out to no_sound(exc) else: # Ensure get_sound returns nothing, so everything else just works # TODO: bail out to disable_sound() pass pygame.display.set_mode(SCREEN, SWSURFACE) #pygame.display.set_icon(pygame.image.load( # data.filepath('icons/nine_tales24x24.png'))) pygame.display.set_caption("Nine Tales") engine = Engine() engine.change_scene(LevelScene("level1")) try: engine.run() except KeyboardInterrupt: pass if __name__ == '__main__': main()