diff --git a/src/client/LocalServer.ts b/src/client/LocalServer.ts index 0036b6302..8248a1603 100644 --- a/src/client/LocalServer.ts +++ b/src/client/LocalServer.ts @@ -11,11 +11,7 @@ import { ServerStartGameMessageSchema, Turn, } from "../core/Schemas"; -import { - createGameRecord, - decompressGameRecord, - generateID, -} from "../core/Util"; +import { createGameRecord, decompressGameRecord } from "../core/Util"; import { LobbyConfig } from "./ClientGameRunner"; import { getPersistentIDFromCookie } from "./Main"; @@ -56,14 +52,6 @@ export class LocalServer { gameID: this.lobbyConfig.gameStartInfo.gameID, gameStartInfo: this.lobbyConfig.gameStartInfo, turns: this.turns, - players: [ - { - flag: this.lobbyConfig.flag, - playerID: generateID(), - clientID: this.lobbyConfig.clientID, - username: this.lobbyConfig.playerName, - }, - ], }), ); } diff --git a/src/client/SinglePlayerModal.ts b/src/client/SinglePlayerModal.ts index fbc23d0bd..25bf2e525 100644 --- a/src/client/SinglePlayerModal.ts +++ b/src/client/SinglePlayerModal.ts @@ -10,6 +10,7 @@ import "./components/baseComponents/Modal"; import "./components/Difficulties"; import { DifficultyDescription } from "./components/Difficulties"; import "./components/Maps"; +import { FlagInput } from "./FlagInput"; import { JoinLobbyEvent } from "./Main"; import { UsernameInput } from "./UsernameInput"; @@ -334,6 +335,10 @@ export class SinglePlayerModal extends LitElement { consolex.warn("Username input element not found"); } + const flagInput = document.querySelector("flag-input") as FlagInput; + if (!flagInput) { + consolex.warn("Flag input element not found"); + } this.dispatchEvent( new CustomEvent("join-lobby", { detail: { @@ -346,6 +351,10 @@ export class SinglePlayerModal extends LitElement { playerID: generateID(), clientID, username: usernameInput.getCurrentUsername(), + flag: + flagInput.getCurrentFlag() == "xx" + ? "" + : flagInput.getCurrentFlag(), }, ], config: { diff --git a/src/client/Transport.ts b/src/client/Transport.ts index 1b50fbdad..d3c570a9b 100644 --- a/src/client/Transport.ts +++ b/src/client/Transport.ts @@ -337,6 +337,7 @@ export class Transport { lastTurn: numTurns, persistentID: this.lobbyConfig.persistentID, username: this.lobbyConfig.playerName, + flag: this.lobbyConfig.flag, }), ), ); diff --git a/src/client/graphics/layers/TerrainLayer.ts b/src/client/graphics/layers/TerrainLayer.ts index d84c1ef9d..bac8487c8 100644 --- a/src/client/graphics/layers/TerrainLayer.ts +++ b/src/client/graphics/layers/TerrainLayer.ts @@ -58,7 +58,6 @@ export class TerrainLayer implements Layer { } renderLayer(context: CanvasRenderingContext2D) { - console.log(this.transformHandler.scale); if (this.transformHandler.scale < 1) { context.imageSmoothingEnabled = true; context.imageSmoothingQuality = "low"; diff --git a/src/core/Schemas.ts b/src/core/Schemas.ts index 0dc8d9ae7..38ffa59fb 100644 --- a/src/core/Schemas.ts +++ b/src/core/Schemas.ts @@ -396,6 +396,7 @@ export const ClientJoinMessageSchema = ClientBaseMessageSchema.extend({ type: z.literal("join"), lastTurn: z.number(), // The last turn the client saw. username: SafeString, + flag: SafeString.nullable().optional(), }); export const ClientMessageSchema = z.union([ diff --git a/src/server/Client.ts b/src/server/Client.ts index 13c3939d3..27bbd8d75 100644 --- a/src/server/Client.ts +++ b/src/server/Client.ts @@ -16,5 +16,6 @@ export class Client { public readonly ip: string, public readonly username: string, public readonly ws: WebSocket, + public readonly flag: string | null, ) {} } diff --git a/src/server/GameServer.ts b/src/server/GameServer.ts index 54cf9a329..9210f7660 100644 --- a/src/server/GameServer.ts +++ b/src/server/GameServer.ts @@ -267,6 +267,7 @@ export class GameServer { playerID: c.playerID, username: c.username, clientID: c.clientID, + flag: c.flag, })), }); diff --git a/src/server/Worker.ts b/src/server/Worker.ts index 32ece2100..0a2d0db83 100644 --- a/src/server/Worker.ts +++ b/src/server/Worker.ts @@ -303,6 +303,7 @@ export function startWorker() { ip, clientMsg.username, ws, + clientMsg.flag, ); const wasFound = gm.addClient(