Commit Graph

3 Commits

Author SHA1 Message Date
Brian Fertig cc2461c6b5 feat(dungeonboss): mid-walk spell casting in adventure windows
Add a "Spells" button during adventure room windows allowing the human
to cast hand spells targeting the hero currently mid-crawl (not just
entrance-queued heroes). The adventure modal stays open across the cast,
narrates spell effects as banners, and correctly resumes the walk
afterward without skipping rooms.

Key changes:
- New `adventurePause` walk type and `ADV_RESUME_MARKERS` to mark the
  boundary between a cast's own effects and resumed walk events
- `findHero` now locates heroes in `adv.walking.hero`
- `showPickModal`/`showReactModal` accept custom callbacks to stay
  inside the adventure modal session
- `driveAdventureWindowDecision` routes window/react decisions to the
  modal UI instead of closing it
- AI window/react turns are computed and revealed via a "has cast:"
  overlay before applying
- `applyAdventureWindowChoice` applies choices directly to the engine,
  splits events into narration vs resumed walk, and plays banners
- New event types (`roomBoosted`, `heroHurt`, `heroHealed`, `heroFeared`,
  `heroTeleportMarked`, `heroesBlocked`, `soulBurned`, `handReset`)
  render as banners in the narration pipeline
- Two new verification tests for mid-walk targeting and fearHero safety
2026-07-06 21:55:04 -06:00
Brian Fertig a1503d19fe feat: enhance SWDBG animations and Dungeon Boss mid-walk casting
- SWDBG: add animated buy sequence with funding arcs, center-screen reveal,
  and face-down stow to discard/deck
- SWDBG: introduce stable row slot tracking so bought/lost cards don't shift
  neighbors; add ghost cards for pending animations
- SWDBG: add end-of-turn discard animations preserving old-hand positions;
  emit endTurnDiscard events from logic
- SWDBG: add deep-dive Buy/Attack buttons for actionable cards; refactor
  dealCardAnimated with startAs/flipTo/keepAlive support
- SWDBG: add drawArcArrow/drawArcArrows for converging attack visuals on
  bounty kills and base attacks
- Dungeon Boss: add mid-walk advRoom casting window after room events,
  letting players react to damage/kills during hero crawl
- Dungeon Boss: track walking hero in publicView and entranceHeroesOf so
  spells and AI heuristics can target mid-crawl heroes
- Dungeon Boss: replace pre-bait token snapshot with overlay system —
  pending bait heroes stay in town with fly-in tokens; pending draw cards
  show card backs until animations land
- Dungeon Boss: keep heroes in battle zone after roomHit/pass instead of
  returning them immediately
- Update images, registry (defaultPlayfield), and verifier (advRoomCasts)
2026-07-05 18:20:06 -06:00
Brian Fertig ab6b2ce9fc feat: add Dungeon Boss and Star Wars Deckbuilder card games
Implement two complete card games with full rule engines, AI opponents
(5 skill levels), procedural rendering, and drop-in art support.

Dungeon Boss: Boss Monster-style dungeon building game for 2-4 players.
Players build dungeons of rooms and spells to lure and defeat heroes,
harvesting souls to win. Includes 8 bosses, 31 room cards, 16 spells,
and 41 heroes with class-based baiting mechanics.

Star Wars Deckbuilder: 2-player deckbuilding game. Players build decks
from faction and neutral cards, purchase from the galaxy row, bounty hunt
enemy units, and attack bases. First to destroy 3 enemy bases wins.
Includes 90-card galaxy deck, 10 bases with abilities, and the Force
mechanic.

Both games include:
- Pure logic engines (rules-verified by headless test suites)
- Synchronous heuristic AI with skill-based decision quality
- Phaser scenes with vector-rendered procedural art
- Drop-in sprite sheet support via JSON mappings
- Tutorial documentation and art specifications
- Registration in the game registry and scene loader
2026-07-03 07:32:41 -06:00