view gamelib/main.py @ 87:d93e1ea2bd0d

Fix method name assumption bug
author Neil Muller <drnlmuller@gmail.com>
date Wed, 09 May 2012 20:06:44 +0200
parents a253fae32a6f
children 74ce25ec2073
line wrap: on
line source

'''Game main module.

Contains the entry point used by the run_game.py script.

Feel free to put all your game code here, or in other modules in this "gamelib"
package.
'''
import pygame
import optparse
import sys

from gamelib.engine import Engine
from gamelib.mainmenu import MainMenu

from gamelib.constants import SCREEN, FREQ, BITSIZE, CHANNELS, BUFFER


def parse_args(args):
    parser = optparse.OptionParser()

    parser.add_option('--no-sound', action="store_false", default=True,
            dest="sound", help="disable sound")

    return parser.parse_args(args)


def main():
    opts, args = parse_args(sys.argv)
    pygame.display.init()
    pygame.font.init()
    if opts.sound:
        pygame.mixer.init(FREQ, BITSIZE, CHANNELS, BUFFER)
    screen = pygame.display.set_mode(SCREEN)
    engine = Engine(screen)
    window = MainMenu(screen)
    engine.run(window)