Commit Graph

4 Commits

Author SHA1 Message Date
Brian Fertig d4d9b25c72 feat(draft): implement alternating rarity-phase draft system
- Replace budget-based drafting with structured rarity-phase progression (legendary→epic→rare→common)
- Add phase tracking (`currentPhaseRarity`, `playerRemainingPicks`, `aiRemainingPicks`)
- Update card pool generation to respect target counts per rarity
- Refactor UI to show per-rarity pick progress instead of budget bars
- Adjust AI draft logic to prioritize current phase rarity and fallback safely
- Rename "Difficulty" selector to "Deck Strength" with clearer labels (Beginner/Medium/Advanced/Legendary)
2026-04-03 16:38:11 -06:00
Brian Fertig a5598bfcd0 feat: add skirmish deck selection and drafting system
- Added `skirmish_decks.json` with 8 premade decks across difficulty levels (Easy to Legendary)
- Implemented `SkirmishDeckSelectScene` for choosing player/opponent decks (draft or premade)
- Implemented `SkirmishDraftScene` with interactive card drafting, budget system, and AI opponent deck generation
- Updated `BattleScene` to support skirmish mode with custom decks and gold rewards (200/400)
- Updated `BattleResultScene` to return players to SkirmishSetup for quick replay
- Integrated new scenes into game flow via config and BootScene data loading
2026-04-01 20:04:06 -06:00
Brian Fertig c4e967c72c feat(ui): add custom fonts and apply Audiowide/RaiderCrusader across all scenes
- Add `Audiowide-Regular.ttf` and `raidercrusader.ttf` to assets/fonts.
- Update Phaser version to v3.90.0 in index.html.
- Load custom fonts in BootScene.preload().
- Apply `fontFamily: 'Audiowide'` to standard UI text (stats, labels, menus).
- Apply `fontFamily: 'RaiderCrusader'` to prominent titles and large display text (main menu, victory/defeat, pack labels).
- Consistently update text styles in CardObject, CardTooltip, HealthBar, and all scene files.
2026-03-15 13:57:59 -06:00
Brian Fertig 313d2548d9 feat: implement card leveling system and campaign progression
Adds a 5-level scaling system to all cards with progressively increasing stats and skill values. Introduces a campaign structure with unlock conditions, level requirements, and completion rewards that grant new cards and player level-ups.

Key changes:
- Refactored `data/cards.json` to use a `levels` array for stat progression
- Added `data/campaigns.json` defining 5 faction campaigns with mission lists and rewards
- Updated `CardManager.createInstance()` to accept a level parameter and resolve stats accordingly
- Implemented save migration (v1→v2) to track player level and unlocked campaigns
- Added `CampaignSelectScene` for browsing unlocked campaigns by faction/level
- Added `SkirmishSetupScene` allowing players to choose card levels for skirmishes
- Enhanced combat engine to pass level data to both player and AI decks
- Implemented visual animations for new skills: `enfeeble` (ATK reduction) and `jam` (skill suppression) with floating text feedback
- Updated UI components (Collection, Deck Builder, Store, Fusion) to display Level 1 stats by default
2026-03-14 13:00:16 -06:00