Freeze world input while skill tree console is open
- Add `skillWindow` to the full-screen click guard so clicks don't steer the ship or fold panels while the skill tree is open. - Include the skill window in the shared `_frozen` condition so the world parks (throttle/velocity cleared) behind it, matching the class console and level-up marquee contract.
This commit is contained in:
parent
ea8b58e9c4
commit
c423bfa8ab
Binary file not shown.
|
Before Width: | Height: | Size: 5.7 MiB After Width: | Height: | Size: 6.0 MiB |
Binary file not shown.
|
|
@ -1988,6 +1988,8 @@ export class GameScene extends Phaser.Scene {
|
|||
if (this.questWindow && this.questWindow.isOpen) return;
|
||||
// The ship console (depth 80) — the same full-screen contract.
|
||||
if (this.shipWindow && this.shipWindow.isOpen) return;
|
||||
// The skill tree console (depth 80) — the same full-screen contract.
|
||||
if (this.skillWindow && this.skillWindow.isOpen) return;
|
||||
// Sub-bar OPEN: a click INSIDE it is its own (the panel or one of
|
||||
// its buttons — the buttons fire on their own pointerdown). ANY
|
||||
// click OUTSIDE — world, deck, HUD, compass — folds it back down
|
||||
|
|
@ -2765,11 +2767,15 @@ export class GameScene extends Phaser.Scene {
|
|||
// The CLASS CONSOLE's freeze (js/ui/ClassWindow.js): picking a class is a
|
||||
// decision, not an overlay on top of the fight — the world holds exactly
|
||||
// the way it does for a comm's ACK and the level-up marquee.
|
||||
// The SKILL TREE console's freeze (js/ui/SkillWindow.js): ranking skills
|
||||
// and binding seats is a decision the same way — the world holds behind
|
||||
// it (the cabinet idiom), and its clicks never steer the ship.
|
||||
const _frozen =
|
||||
_commsPaused ||
|
||||
this.levelMarquee?.active === true ||
|
||||
!!this._jumping ||
|
||||
this.classWindow?.isOpen === true;
|
||||
this.classWindow?.isOpen === true ||
|
||||
this.skillWindow?.isOpen === true;
|
||||
// The freeze's PARKING (the ack pause's onPause is the same contract
|
||||
// for its own freeze): while ANY freeze holds, the action is parked
|
||||
// dead EVERY frame — the ship (target + throttle cleared, velocity
|
||||
|
|
|
|||
Loading…
Reference in New Issue