#!/usr/local/bin/python2.4 import pygame from pygame.locals import * import os import sys import math import random import inputs import gamedata import gametimer import video import glwrapper import init_universe import universe import time import components try: from PIL import PngImagePlugin except: import PngImagePlugin from .gameobj import * from player import * from particles import * from ai import * pygame.init() gamedata.load_gamedata() size = width, height = (1600,1200) size = width, height = (1024,768) video.set_res(size) video.init() video.enable_vsync() gametimer.start_loop() init_universe.init() view = None skipping = False while True: events = pygame.event.get() #if skipping: # print "SKIPPING! Forced? %s" % (video.get_forced_redraw(),) gametimer.next_frame(skipping) """ if guiscreen != None or guidlg != None: video.force_redraw() # irrelevant right now, but when we exit the gui, we'll need a full redraw! for ev in events: if ev.type == QUIT: inputs.add_command('exit') break if 'exit' in inputs.commands: break if guiscreen: guiscreen.distribute_events(*events) continue """ pygame.event.pump() for ev in events: if ev.type == QUIT: inputs.add_command('exit') break elif ev.type == KEYUP: inputs.keyup(ev.key) elif ev.type == KEYDOWN: inputs.keydown(ev.key) #elif ev.type == VIDEOEXPOSE: # video.force_redraw() elif ev.type in (MOUSEBUTTONDOWN, MOUSEBUTTONUP): pass if 'exit' in inputs.commands: break #map.handle_keys(keys) #units.mgr.update() #view.update() #if video.get_forced_redraw(): # video.get_scr().fill((0,0,0)) #skipping = video.skipping_next_frame() if not skipping: universe.next_frame() video.predraw() universe.render() if not skipping: video.next_frame() inputs.next_frame() else: video.reset_skipping()