def gamemain(args): #initialize all our code (not load resources) pygame.init() game.clock = pygame.time.Clock() gamepref.load_prefs() gfx.initialize(game.size) pygame.display.set_caption('Py1945') #input.init() snd.initialize() if not txt.initialize(): raise pygame.error, "Pygame Font Module Unable to Initialize" #create the starting game handler from gameinit import GameInit from gamefinish import GameFinish game.handler = GameInit(GameFinish(None)) gamestart = pygame.time.get_ticks() numframes = 0 #main game loop lasthandler = None while game.handler: numframes += 1 handler = game.handler if handler != lasthandler: lasthandler = handler if hasattr(handler, 'starting'): handler.starting() for event in pygame.event.get(): if event.type == pygame.USEREVENT: fps = game.clock.get_fps() continue elif event.type == pygame.ACTIVEEVENT: if event.state == 4 and event.gain: #uniconified, lets try to kick the screen pygame.display.update() elif event.state == 2: if hasattr(game.handler, 'gotfocus'): if event.gain: game.handler.gotfocus() else: game.handler.lostfocus() continue elif event.type == pygame.KEYUP or event.type == pygame.KEYDOWN: handler.input(event) elif event.type == pygame.QUIT: game.handler = None break handler.event(event) handler.run() game.clockticks = game.clock.tick(40) gfx.update() while not pygame.display.get_active(): pygame.time.wait(100) pygame.event.pump() gameend = pygame.time.get_ticks() runtime = (gameend - gamestart) / 1000.0 #game is finished at this point, do any #uninitialization needed gamepref.save_prefs() pygame.quit()
def gamemain(args): #initialize all our code (not load resources) pygame.init() game.clock = pygame.time.Clock() players.load_players() gamepref.load_prefs() size = 800, 600 full = game.display if '-window' in args: full = 0 gfx.initialize(size, full) pygame.display.set_caption('SolarWolf') if not '-nosound' in args: snd.initialize() input.init() input.load_translations() if not txt.initialize(): raise pygame.error, "Pygame Font Module Unable to Initialize" #create the starting game handler from gameinit import GameInit from gamefinish import GameFinish game.handler = GameInit(GameFinish(None)) #set timer to control stars.. pygame.time.set_timer(pygame.USEREVENT, 1000) #psyco.profile() gamestart = pygame.time.get_ticks() numframes = 0 #random.seed(0) #main game loop lasthandler = None while game.handler: numframes += 1 handler = game.handler if handler != lasthandler: lasthandler = handler if hasattr(handler, 'starting'): handler.starting() for event in pygame.event.get(): if event.type == pygame.USEREVENT: fps = game.clock.get_fps() #print 'FRAMERATE: %f fps' % fps gfx.starobj.recalc_num_stars(fps) continue elif event.type == pygame.ACTIVEEVENT: if event.state == 4 and event.gain: #uniconified, lets try to kick the screen pygame.display.update() elif event.state == 2: if hasattr(game.handler, 'gotfocus'): if event.gain: game.handler.gotfocus() else: game.handler.lostfocus() continue if event.type == pygame.KEYDOWN and event.key == pygame.K_RETURN: if event.mod&pygame.KMOD_ALT: # check that we aren't still loading resources, as changing # resolution when we are can cause issues if (not hasattr(handler, 'thread') or not handler.thread.isAlive()): game.display = not game.display gfx.switchfullscreen() continue inputevent = input.translate(event) if inputevent.normalized != None: inputevent = input.exclusive((input.UP, input.DOWN, input.LEFT, input.RIGHT), inputevent) handler.input(inputevent) elif event.type == pygame.QUIT: game.handler = None break handler.event(event) handler.run() game.clockticks = game.clock.tick(40) #print 'ticks=%d rawticks=%d fps=%.2f'%(game.clock.get_time(), game.clock.get_rawtime(), game.clock.get_fps()) gfx.update() while not pygame.display.get_active(): pygame.time.wait(100) pygame.event.pump() #pygame.time.wait(10) gameend = pygame.time.get_ticks() #runtime = (gameend - gamestart) / 1000.0 #print "FINAL FRAMERATE: ", numframes, runtime, numframes/runtime #game is finished at this point, do any #uninitialization needed input.save_translations() players.save_players() gamepref.save_prefs()
def gamemain(args): #initialize all our code (not load resources) pygame.init() game.clock = pygame.time.Clock() players.load_players() input.load_translations() gamepref.load_prefs() size = 800, 600 full = game.display if '-window' in args: full = 0 gfx.initialize(size, full) pygame.display.set_caption('SolarWolf') if not '-nosound' in args: snd.initialize() input.init() if not txt.initialize(): raise pygame.error, "Pygame Font Module Unable to Initialize" #create the starting game handler from gameinit import GameInit from gamefinish import GameFinish game.handler = GameInit(GameFinish(None)) #set timer to control stars.. pygame.time.set_timer(pygame.USEREVENT, 1000) #psyco.full() gamestart = pygame.time.get_ticks() numframes = 0 #random.seed(0) #main game loop lasthandler = None while game.handler: numframes += 1 handler = game.handler if handler != lasthandler: lasthandler = handler if hasattr(handler, 'starting'): handler.starting() for event in pygame.event.get(): if event.type == pygame.USEREVENT: fps = game.clock.get_fps() #print 'FRAMERATE: %f fps' % fps gfx.starobj.recalc_num_stars(fps) continue elif event.type == pygame.ACTIVEEVENT: if event.state == 4 and event.gain: #uniconified, lets try to kick the screen pygame.display.update() elif event.state == 2: if hasattr(game.handler, 'gotfocus'): if event.gain: game.handler.gotfocus() else: game.handler.lostfocus() continue if event.type == pygame.KEYDOWN and event.key == pygame.K_RETURN: if event.mod&pygame.KMOD_ALT: game.display = not game.display gfx.switchfullscreen() continue inputevent = input.translate(event) if inputevent.normalized != None: inputevent = input.exclusive((input.UP, input.DOWN, input.LEFT, input.RIGHT), inputevent) handler.input(inputevent) elif event.type == pygame.QUIT: game.handler = None break handler.event(event) handler.run() game.clockticks = game.clock.tick(40) #print 'ticks=%d rawticks=%d fps=%.2f'%(game.clock.get_time(), game.clock.get_rawtime(), game.clock.get_fps()) gfx.update() while not pygame.display.get_active(): pygame.time.wait(100) pygame.event.pump() #pygame.time.wait(10) gameend = pygame.time.get_ticks() runtime = (gameend - gamestart) / 1000.0 #print "FINAL FRAMERATE: ", numframes, runtime, numframes/runtime #game is finished at this point, do any #uninitialization needed input.save_translations() players.save_players() gamepref.save_prefs() pygame.quit()