From 10d70d33274a58d8846c939ef1ccf28eabe7f90b Mon Sep 17 00:00:00 2001 From: Evan Date: Sun, 22 Dec 2024 20:27:49 -0800 Subject: [PATCH] fix nuke bug, make spawn phase longer, show trade ships in overview --- TODO.txt | 4 ++++ src/client/graphics/layers/PlayerInfoOverlay.ts | 2 +- src/core/Consolex.ts | 2 +- src/core/configuration/DefaultConfig.ts | 2 +- src/core/game/UnitImpl.ts | 5 +++++ 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/TODO.txt b/TODO.txt index 0f802e8a8..044ba101e 100644 --- a/TODO.txt +++ b/TODO.txt @@ -258,9 +258,13 @@ * highlight player spawn DONE 12/21/2024 * make bots less likely to build ships DONE 12/21/2024 * bugix: wait for css to load on front page DONE 12/21/2024 +* fix nuke delete error DONE 12/21/2024 +* make spawn phase longer DONE 12/22/2024 +* show trade ships in overview DONE 12/22/2024 -- v0.13.0 release +* make url allow to join game * show players joined username in private lobby * troop density affects attack bonus * bug: NPCs don't have money diff --git a/src/client/graphics/layers/PlayerInfoOverlay.ts b/src/client/graphics/layers/PlayerInfoOverlay.ts index 3a08afa80..1f9c6a54e 100644 --- a/src/client/graphics/layers/PlayerInfoOverlay.ts +++ b/src/client/graphics/layers/PlayerInfoOverlay.ts @@ -55,7 +55,7 @@ export class PlayerInfoOverlay extends LitElement implements Layer { this.player = owner; this.setVisible(true); } else if (!tile.isLand()) { - const units = this.game.units(UnitType.Destroyer, UnitType.Battleship) + const units = this.game.units(UnitType.Destroyer, UnitType.Battleship, UnitType.TradeShip) .filter(u => euclideanDist(worldCoord, u.tile().cell()) < 50) .sort(distSortUnit(tile)); diff --git a/src/core/Consolex.ts b/src/core/Consolex.ts index b2d9cdc82..b3b4eb74f 100644 --- a/src/core/Consolex.ts +++ b/src/core/Consolex.ts @@ -28,7 +28,7 @@ export function initRemoteSender(eventBus: EventBus) { consolex.error = (...args: any[]): void => { console.error(...args); - eventBus.emit(new SendLogEvent(LogSeverity.Error, args.join(' '))) + // eventBus.emit(new SendLogEvent(LogSeverity.Error, args.join(' '))) } } export class SendLogEvent implements GameEvent { diff --git a/src/core/configuration/DefaultConfig.ts b/src/core/configuration/DefaultConfig.ts index f9c811370..2c96a3a75 100644 --- a/src/core/configuration/DefaultConfig.ts +++ b/src/core/configuration/DefaultConfig.ts @@ -157,7 +157,7 @@ export abstract class DefaultConfig implements Config { return 500 } numSpawnPhaseTurns(gameType: GameType): number { - return gameType == GameType.Singleplayer ? 100 : 200 + return gameType == GameType.Singleplayer ? 100 : 300 } numBots(): number { return 400 diff --git a/src/core/game/UnitImpl.ts b/src/core/game/UnitImpl.ts index e402235ef..04713afbf 100644 --- a/src/core/game/UnitImpl.ts +++ b/src/core/game/UnitImpl.ts @@ -58,6 +58,7 @@ export class UnitImpl implements MutableUnit { setOwner(newOwner: Player): void { const oldOwner = this._owner + oldOwner._units = oldOwner._units.filter(u => u != this) this._owner = newOwner as PlayerImpl this.g.fireUnitUpdateEvent(this, this.tile()) this.g.displayMessage( @@ -94,4 +95,8 @@ export class UnitImpl implements MutableUnit { hash(): number { return this.tile().cell().x + this.tile().cell().y + simpleHash(this.type()) } + + toString(): string { + return `Unit:${this._type},owner:${this.owner().name()}` + } }