orbit/js/ui
Brian Fertig ce26b38df9 Add quests console with live progress tracking and claimable rewards
- Introduce QuestState ledger (granted/claimed ids) persisted via SaveData, with safe fromJSON validation that drops unknown ids and enforces claimed ⊆ granted
- Define the starter quest "Start Your Journey" in data/quests.json with four live checks: research node, lifetime asteroid mining, home tether level, and discovered world count
- Add totalMined counter tracked on each ore event to support the mining requirement independently of cargo hold
- Build QuestWindow (full-screen console at depth 80) with video feed, category tabs (Main Story live, Side Quests standby), quest list, detail plate with checklist and CLAIM REWARD action
- Wire QUESTS slot into both flight and surface command decks right of SHIP; SurfaceScene delegates snapshot/claim to the sleeping GameScene while rendering its own console notes
- Grant starter quest on first boot with delayed toast; announce "QUEST READY" once per quest when all checks complete
- Update research-builds tests for seven-slot deck layout; add dev/quests.test.mjs covering data contract, ledger behavior, save round-trip, and deck slot placement
2026-09-08 09:32:12 -06:00
..
ActionBar.js
…
BuildWindow.js
…
CommsPanel.js
…
ConfirmOverlay.js
…
CyberShape.js
…
DiscoveryCompass.js Changes to Research Areas 2026-09-07 23:10:47 -06:00
GalaxyView.js Add route/destination visualization to map console 2026-09-07 21:48:50 -06:00
GlitchText.js
…
MapWindow.js Add route/destination visualization to map console 2026-09-07 21:48:50 -06:00
MenuButton.js
…
MenuSubBar.js
…
MineralHud.js
…
MiningPopup.js
…
QuestWindow.js Add quests console with live progress tracking and claimable rewards 2026-09-08 09:32:12 -06:00
ResearchWindow.js
…
SavePanel.js
…
SignalCompass.js
…
SlotCard.js
…
Toast.js
…