From 0f0ea4373445bc21b261469fabae7e1bcbda2539 Mon Sep 17 00:00:00 2001 From: Ryan Barlow Date: Thu, 8 Jan 2026 09:31:38 +0000 Subject: [PATCH] hide player overlay when picking a target for a bomb --- .../graphics/layers/PlayerInfoOverlay.ts | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/client/graphics/layers/PlayerInfoOverlay.ts b/src/client/graphics/layers/PlayerInfoOverlay.ts index 810a18d8a..826ce97ba 100644 --- a/src/client/graphics/layers/PlayerInfoOverlay.ts +++ b/src/client/graphics/layers/PlayerInfoOverlay.ts @@ -13,7 +13,11 @@ import { import { TileRef } from "../../../core/game/GameMap"; import { AllianceView } from "../../../core/game/GameUpdates"; import { GameView, PlayerView, UnitView } from "../../../core/game/GameView"; -import { ContextMenuEvent, MouseMoveEvent } from "../../InputHandler"; +import { + ContextMenuEvent, + GhostStructureChangedEvent, + MouseMoveEvent, +} from "../../InputHandler"; import { renderDuration, renderNumber, @@ -82,6 +86,9 @@ export class PlayerInfoOverlay extends LitElement implements Layer { @state() private _isInfoVisible: boolean = false; + @state() + private isBombSelected: boolean = false; + private _isActive = false; private lastMouseUpdate = 0; @@ -95,6 +102,14 @@ export class PlayerInfoOverlay extends LitElement implements Layer { this.eventBus.on(ContextMenuEvent, (e: ContextMenuEvent) => this.maybeShow(e.x, e.y), ); + this.eventBus.on( + GhostStructureChangedEvent, + (e: GhostStructureChangedEvent) => { + this.isBombSelected = + e.ghostStructure === UnitType.AtomBomb || + e.ghostStructure === UnitType.HydrogenBomb; + }, + ); this.eventBus.on(CloseRadialMenuEvent, () => this.hide()); this._isActive = true; } @@ -519,7 +534,7 @@ export class PlayerInfoOverlay extends LitElement implements Layer { } render() { - if (!this._isActive) { + if (!this._isActive || this.isBombSelected) { return html``; }