From af0177baa16a02a3b1acbd2e30ec57b9148954cc Mon Sep 17 00:00:00 2001 From: Ilan Schemoul Date: Wed, 19 Mar 2025 04:37:09 +0100 Subject: [PATCH] feat: add a lot more info in player overlay (#279) --- .../graphics/layers/PlayerInfoOverlay.ts | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/src/client/graphics/layers/PlayerInfoOverlay.ts b/src/client/graphics/layers/PlayerInfoOverlay.ts index 07157b0de..0d071bd1a 100644 --- a/src/client/graphics/layers/PlayerInfoOverlay.ts +++ b/src/client/graphics/layers/PlayerInfoOverlay.ts @@ -165,6 +165,10 @@ export class PlayerInfoOverlay extends LitElement implements Layer { const myPlayer = this.myPlayer(); const isAlly = myPlayer?.isAlliedWith(player); let relationHtml = null; + const attackingTroops = player + .outgoingAttacks() + .map((a) => a.troops) + .reduce((a, b) => a + b, 0); if (player.type() == PlayerType.FakeHuman && myPlayer != null) { const relation = @@ -201,12 +205,29 @@ export class PlayerInfoOverlay extends LitElement implements Layer { ${player.name()}
Type: ${playerType}
-
- Troops: ${renderTroops(player.troops())} -
+ ${player.troops() >= 1 && + html`
+ Defending troops: ${renderTroops(player.troops())} +
`} + ${attackingTroops >= 1 && + html`
+ Attacking troops: ${renderTroops(attackingTroops)} +
`}
Gold: ${renderNumber(player.gold())}
+
+ Ports: ${player.units(UnitType.Port).length} +
+
+ Cities: ${player.units(UnitType.City).length} +
+
+ Missile launchers: ${player.units(UnitType.MissileSilo).length} +
+
+ SAMs: ${player.units(UnitType.SAMLauncher).length} +
${relationHtml} `;