last_time = time.time()*1000.0 SPEED = 5 game = Game() key_monitor = KeyMonitor() #Message pump while not done: for event in pygame.event.get(): if event.type == pygame.QUIT: done = True elif event.type == pygame.KEYDOWN and event.key == pygame.K_q: done = True elif event.type == pygame.KEYDOWN and event.key == pygame.K_SPACE and game.started()==False: #Reset all the pieces witch.kill() zombie.kill() monster.kill() skeleton.kill() game.start() last_time = time.time()*1000 elif event.type == pygame.KEYDOWN: #print(event.key) key_monitor.key_down(event) elif event.type == pygame.KEYUP: key_monitor.key_up(event) # Game loop if game.started() and (time.time()*1000.0)-last_time > FRAME_TIME: last_time = time.time()*1000.0 game.tick()