Mercurial > mamba
view mamba/__main__.py @ 348:ca2c98447453
Gracefull Ctrl-C.
author | Simon Cross <hodgestar@gmail.com> |
---|---|
date | Fri, 16 Sep 2011 23:21:04 +0200 |
parents | fba74abad7b7 |
children | 7d5bf8e72c61 |
line wrap: on
line source
"""Main module for the game""" import sys import pygame from pygame.locals import SWSURFACE from mamba.constants import SCREEN, NAME from mamba.options import options, parse_args, check_args from mamba.engine import Engine from mamba.gamestate import load_state, load_levels from mamba.sound import SoundSystem from mamba.habitats.mainmenu import MainMenu from mamba.habitats.level import LevelHabitat from mamba.habitats.editor import EditorHabitat from mamba.level import Level def main(): """Launch the currently unnamed mamab game""" parse_args(sys.argv) if not check_args(): sys.exit(1) SoundSystem(options.sound) pygame.display.init() pygame.font.init() pygame.display.set_mode(SCREEN, SWSURFACE) pygame.display.set_caption(NAME) load_state() load_levels() if options.edit: start = EditorHabitat(Level(options.level)) elif options.level is not None: start = LevelHabitat(Level(options.level)) else: start = MainMenu() engine = Engine() engine.set_habitat(start) try: engine.run() except KeyboardInterrupt: pass engine.set_habitat(None) # clear habitat