mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-07-09 07:53:28 +00:00
refactored terrain render into separate class
This commit is contained in:
@@ -8,23 +8,25 @@ import {InputHandler, MouseUpEvent, ZoomEvent, DragEvent, MouseDownEvent} from "
|
||||
import {ClientID, ClientIntentMessageSchema, ClientJoinMessageSchema, ClientLeaveMessageSchema, ClientMessageSchema, GameID, Intent, ServerMessage, ServerMessageSchema, ServerSyncMessage, Turn} from "../core/Schemas";
|
||||
import {TerrainMap} from "../core/TerrainMapLoader";
|
||||
import {bfs, manhattanDist} from "../core/Util";
|
||||
import {TerrainRenderer} from "./graphics/TerrainRenderer";
|
||||
|
||||
|
||||
|
||||
export function createClientGame(name: string, clientID: ClientID, gameID: GameID, config: Config, terrainMap: TerrainMap): ClientGame {
|
||||
let eventBus = new EventBus()
|
||||
let gs = createGame(terrainMap, eventBus, config)
|
||||
let gameRenderer = new GameRenderer(gs, config.theme(), document.createElement("canvas"))
|
||||
let game = createGame(terrainMap, eventBus, config)
|
||||
let terrainRenderer = new TerrainRenderer(game)
|
||||
let gameRenderer = new GameRenderer(game, config.theme(), terrainRenderer)
|
||||
|
||||
return new ClientGame(
|
||||
name,
|
||||
clientID,
|
||||
gameID,
|
||||
eventBus,
|
||||
gs,
|
||||
game,
|
||||
gameRenderer,
|
||||
new InputHandler(eventBus),
|
||||
new Executor(gs)
|
||||
new Executor(game)
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user