33 lines
954 B
Python
33 lines
954 B
Python
from pygame.time import Clock
|
|
|
|
from .servers.graphics import GraphicsServer
|
|
from .servers.sound import SoundServer
|
|
from .servers.physics import PhysicsServer
|
|
from .servers.input import InputServer, StopException
|
|
from .scene_manager import SceneManager
|
|
|
|
|
|
class Game:
|
|
cur_tick = 0
|
|
|
|
def __init__(self, start_scene):
|
|
self._graphics_server = GraphicsServer()
|
|
self._sound_server = SoundServer()
|
|
self._physics_server = PhysicsServer()
|
|
self._input_server = InputServer()
|
|
self._scene_manager = SceneManager(start_scene)
|
|
|
|
def run(self):
|
|
clock = Clock()
|
|
while True:
|
|
try:
|
|
self._input_server.step()
|
|
except StopException:
|
|
break
|
|
self._scene_manager.step()
|
|
self._physics_server.step()
|
|
self._sound_server.step()
|
|
self._graphics_server.step()
|
|
Game.cur_tick += 1
|
|
clock.tick(60)
|