Refactor: Split config into Config and ServerConfig

This commit is contained in:
evanpelle
2024-12-25 14:04:19 -08:00
parent 111775a3f4
commit 57cbf5c55e
16 changed files with 101 additions and 79 deletions
+2 -2
View File
@@ -1,4 +1,4 @@
import { Config } from "../core/configuration/Config";
import { Config, ServerConfig } from "../core/configuration/Config";
import { ClientID, GameConfig, GameID } from "../core/Schemas";
import { v4 as uuidv4 } from 'uuid';
import { Client } from "./Client";
@@ -14,7 +14,7 @@ export class GameManager {
private games: GameServer[] = []
constructor(private config: Config) { }
constructor(private config: ServerConfig) { }
public game(id: GameID): GameServer | null {
return this.games.find(g => g.id == id)
+2 -2
View File
@@ -1,5 +1,5 @@
import { ClientID, ClientMessage, ClientMessageSchema, GameConfig, GameRecordSchema, Intent, PlayerRecord, ServerPingMessageSchema, ServerStartGameMessage, ServerStartGameMessageSchema, ServerTurnMessageSchema, Turn } from "../core/Schemas";
import { Config } from "../core/configuration/Config";
import { Config, ServerConfig } from "../core/configuration/Config";
import { Client } from "./Client";
import WebSocket from 'ws';
import { slog } from "./StructuredLog";
@@ -35,7 +35,7 @@ export class GameServer {
public readonly id: string,
public readonly createdAt: number,
public readonly isPublic: boolean,
private config: Config,
private config: ServerConfig,
private gameConfig: GameConfig,
) { }
+2 -2
View File
@@ -5,7 +5,7 @@ import path from 'path';
import { fileURLToPath } from 'url';
import { GameManager } from './GameManager';
import { ClientMessage, ClientMessageSchema, GameRecord, GameRecordSchema, LogSeverity } from '../core/Schemas';
import { getConfig } from '../core/configuration/Config';
import { getConfig, getServerConfig } from '../core/configuration/Config';
import { slog } from './StructuredLog';
import { Client } from './Client';
import { GamePhase, GameServer } from './GameServer';
@@ -23,7 +23,7 @@ const wss = new WebSocketServer({ server });
app.use(express.static(path.join(__dirname, '../../out')));
app.use(express.json())
const gm = new GameManager(getConfig())
const gm = new GameManager(getServerConfig())
const bot = new DiscordBot();
try {