orbit/dev
Brian Fertig 75767dc5a5 Add ship state machine and let movement break the mining sequence
- Introduce `Ship.state` ('normal' | 'mining') with `setState()` and an
  `onStateChange` callback so the scene can react to state exits.
- Any player-initiated movement (world click or compass autopilot) now
  drops the ship back to 'normal', which ends the mining sequence via the
  scene's handler; Mining.update() enforces the gate as a belt-and-braces.
- Rename `Mining.isLocked` to `isActive` and update GameScene click logic:
  clicks no longer hold during extension — they move the ship and abort the
  arm's reach.
- Tighten the popup-button swallow window from 300 ms to 20 ms and add a
  `containsScreen()` hit-test so only the exact button press is consumed,
  not subsequent deliberate clicks on the panel area.
- Expand the headless mining test to cover the new movement-abort contract:
  world click mid-extension breaks the arm, autopilot retracts the beam,
  and ship state transitions are asserted at every stage.
2026-09-04 18:06:33 -06:00
..
asteroids.test.mjs Fix asteroid rock overlap and add distinct compass color for clusters 2026-09-04 08:45:28 -06:00
cdp-eval.mjs
cdp-firefox.mjs Add save/load system with 10-slot localStorage bank and UI 2026-09-04 13:09:08 -06:00
cdpshot.mjs
clickout-test.html Close sub-menu on click-outside and guard compass autopilot during dismi 2026-09-04 13:26:45 -06:00
clickout-test.mjs Close sub-menu on click-outside and guard compass autopilot during dismi 2026-09-04 13:26:45 -06:00
decode.test.mjs Add SFX, dossier toggle/auto-fold, and tether HUD repositioning 2026-09-04 10:25:37 -06:00
discovery.test.mjs
galaxy.test.mjs
mining-test.html Add asteroid mining: energy arm, beam FX, and context menu 2026-09-04 17:09:16 -06:00
mining-test.mjs Add ship state machine and let movement break the mining sequence 2026-09-04 18:06:33 -06:00
planet.test.mjs
popup-shot.html Fix mining popup width and layout to fit real font metrics 2026-09-04 17:16:56 -06:00
popup-shot.mjs Fix mining popup width and layout to fit real font metrics 2026-09-04 17:16:56 -06:00
research-builds.test.mjs
saves-ui-test.html Add save/load system with 10-slot localStorage bank and UI 2026-09-04 13:09:08 -06:00
saves-ui-test.mjs Fix SavePanel button overflow, header decode freeze, and card lock state 2026-09-04 14:48:36 -06:00
saves.test.mjs Add save/load system with 10-slot localStorage bank and UI 2026-09-04 13:09:08 -06:00
ship-behavior.test.mjs
smoke-game.mjs
starfield.test.mjs
system-hud.test.mjs Add asteroid mining: energy arm, beam FX, and context menu 2026-09-04 17:09:16 -06:00
test-game.html
tether.test.mjs
wdshot.mjs Fix mining popup width and layout to fit real font metrics 2026-09-04 17:16:56 -06:00
zorder-test.html Fix menu sub-bar, save panel, and confirm dialog input and z-order bugs 2026-09-04 14:31:34 -06:00
zorder-test.mjs Fix menu sub-bar, save panel, and confirm dialog input and z-order bugs 2026-09-04 14:31:34 -06:00