From c28fe35b5a290ff97c54eb85b52736fc58f1b46b Mon Sep 17 00:00:00 2001 From: Scott Anderson <662325+scottanderson@users.noreply.github.com> Date: Tue, 13 May 2025 02:26:03 -0400 Subject: [PATCH] fix --- src/core/configuration/DefaultConfig.ts | 10 +++++----- src/core/execution/BotExecution.ts | 3 +++ src/core/game/TeamAssignment.ts | 3 +++ tests/util/Setup.ts | 2 +- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/core/configuration/DefaultConfig.ts b/src/core/configuration/DefaultConfig.ts index dbdbfc8f0..0f6facdc1 100644 --- a/src/core/configuration/DefaultConfig.ts +++ b/src/core/configuration/DefaultConfig.ts @@ -61,13 +61,13 @@ export abstract class DefaultServerConfig implements ServerConfig { ); } otelEndpoint(): string { - return process.env.OTEL_ENDPOINT; + return process.env.OTEL_ENDPOINT ?? "undefined"; } otelUsername(): string { - return process.env.OTEL_USERNAME; + return process.env.OTEL_USERNAME ?? "undefined"; } otelPassword(): string { - return process.env.OTEL_PASSWORD; + return process.env.OTEL_PASSWORD ?? "undefined"; } region(): string { if (this.env() === GameEnv.Dev) { @@ -89,7 +89,7 @@ export abstract class DefaultServerConfig implements ServerConfig { } r2Bucket(): string { - return process.env.R2_BUCKET; + return process.env.R2_BUCKET ?? "undefined"; } adminHeader(): string { @@ -219,7 +219,7 @@ export class DefaultConfig implements Config { return this._serverConfig; } - userSettings(): UserSettings | null { + userSettings(): UserSettings { return this._userSettings; } diff --git a/src/core/execution/BotExecution.ts b/src/core/execution/BotExecution.ts index 2d9075d38..b25cd0a67 100644 --- a/src/core/execution/BotExecution.ts +++ b/src/core/execution/BotExecution.ts @@ -55,6 +55,9 @@ export class BotExecution implements Execution { } private maybeAttack() { + if (this.behavior === null) { + throw new Error("not initialized"); + } const traitors = this.bot .neighbors() .filter((n) => n.isPlayer() && n.isTraitor()) as Player[]; diff --git a/src/core/game/TeamAssignment.ts b/src/core/game/TeamAssignment.ts index d12963cd2..8cd09f9b6 100644 --- a/src/core/game/TeamAssignment.ts +++ b/src/core/game/TeamAssignment.ts @@ -42,6 +42,8 @@ export function assignTeams( team = t; } + if (team === null) continue; + for (const player of clanPlayers) { if (teamSize < maxTeamSize) { teamSize++; @@ -63,6 +65,7 @@ export function assignTeams( teamSize = p; team = t; } + if (team === null) continue; teamPlayerCount.set(team, teamSize + 1); result.set(player, team); } diff --git a/tests/util/Setup.ts b/tests/util/Setup.ts index e8acba56a..8fc694e2e 100644 --- a/tests/util/Setup.ts +++ b/tests/util/Setup.ts @@ -19,7 +19,7 @@ import { TestServerConfig } from "./TestServerConfig"; export async function setup( mapName: string, - _gameConfig: GameConfig = {}, + _gameConfig: Partial = {}, humans: PlayerInfo[] = [], ): Promise { // Load the specified map