orbit/js/ui
Brian Fertig 828a5b8c38 Implement economy model v2: one world, one good with daily batch stock
- Replace producer/demand class pricing with strict 1:1 origin assignment;
  each settled system sells exactly its signature good at a discounted origin
  price, and the catalog remainder becomes a hub pool resold by stations/capitals
- Make banded hop distance the dominant sell-price factor (x1.0 to x7.0),
  with planet-type demand as a secondary +10% modifier, and cap every shop's
  sell price at its own buy price to eliminate the v1 infinite-credit loop
- Add Stock.js for the time-gated daily batch (6 units per origin per wall-clock
  day) — the economy's only stateful piece; wire it through GameScene,
  SaveData capture/restore/reset, and the shop UI stepper clamp + SOLD OUT strip
- Update Economy.js with assignOrigins pass, new buyPrice/sellPrice/shopFor
  logic, tradePreview stock-cap backstop (buyback exempt), and distanceFactor
- Rework shop UI: BuyList shows "N left"/"SOLD OUT" per batch-limited row and
  clamps the stepper; ScoutPanel shows MADE IN (origin system) instead of GROWN ON;
  ShopView wires stockRemaining/stockCapsFor/spendStock into preview and confirm
- Update all dev tests (economy, cargo, shop-ui, saves) to assert model v2
  invariants including the anti-loop sweep, batch clamp/backstop, and save round-trip
2026-09-14 18:22:21 -06:00
..
shop Implement economy model v2: one world, one good with daily batch stock 2026-09-14 18:22:21 -06:00
ActionBar.js
…
BuildWindow.js
…
CommsBox.js
…
CommsPanel.js
…
ConfirmOverlay.js
…
CreditsHud.js
…
CyberShape.js
…
DiscoveryCompass.js Remove waypoint kind; allow up to two deep-space stations per system 2026-09-14 10:25:19 -06:00
ExploreBar.js
…
GalaxyView.js
…
GlitchText.js
…
MapWindow.js
…
MenuButton.js
…
MenuSubBar.js
…
MineralHud.js
…
MiningPopup.js
…
PerimeterShimmer.js
…
QuestTrackerHud.js
…
QuestWindow.js
…
ResearchWindow.js Gate mining Tier-3 research on Special Delivery quest claim 2026-09-14 15:12:07 -06:00
SavePanel.js
…
ShimmerCue.js
…
SignalCompass.js
…
SlotCard.js
…
Toast.js
…
VignetteWindow.js
…