29 lines
649 B
Python
29 lines
649 B
Python
from typing import Optional
|
|
|
|
from hopper.engine import GameEngine, GameEngineFactory
|
|
from hopper.ws_server import WSServer
|
|
from settings import settings
|
|
|
|
game_engine: Optional[GameEngine] = None
|
|
|
|
|
|
def create_game_engine() -> GameEngine:
|
|
global game_engine
|
|
|
|
if game_engine:
|
|
raise RuntimeError("Can't call create_game_engine() more than once!")
|
|
|
|
ws_server = WSServer(
|
|
host=settings.ws_server.HOST,
|
|
port=settings.ws_server.PORT,
|
|
)
|
|
ws_server.start()
|
|
|
|
game_engine = GameEngineFactory.create_default(ws_server=ws_server)
|
|
|
|
return game_engine
|
|
|
|
|
|
def get_game_engine() -> GameEngine:
|
|
return game_engine
|