feat: add spells and adept powers tracking system (Closes #92) #134

Merged
shahondin1624 merged 1 commits from feature/issue-92-spells-and-adept-powers-system into main 2026-04-05 02:38:36 +02:00
Owner

Summary

  • Add complete Shadowrun 5e magic system: spell tracking (with type, range, duration, drain display) and adept power tracking (with power point budget based on Magic attribute)
  • New Magic tab on the character sheet with SpellPanel and AdeptPowerPanel UI components
  • Schema migration v0.2 -> v0.3 for backward compatibility with existing saves

Changes

Data Model

  • Spell data class with SpellType, SpellRange, SpellDuration enums
  • AdeptPower data class with power point cost
  • Magic attribute added to AttributeType and Attributes
  • spells and adeptPowers lists added to ShadowrunCharacter
  • Helper methods: powerPointBudget(), totalPowerPointsUsed(), activeSustainedSpells()

UI

  • SpellPanel - add/edit/remove spells, toggle sustained status, drain display
  • AdeptPowerPanel - add/edit/remove powers, power point budget display
  • New "Magic" tab in CharacterSheetPage

Infrastructure

  • MigrationV02ToV03 for schema backward compatibility
  • String resources for all new UI text
  • Test tags for all new components
  • Updated tests for new schema version and Magic attribute

Closes #92

## Summary - Add complete Shadowrun 5e magic system: spell tracking (with type, range, duration, drain display) and adept power tracking (with power point budget based on Magic attribute) - New Magic tab on the character sheet with SpellPanel and AdeptPowerPanel UI components - Schema migration v0.2 -> v0.3 for backward compatibility with existing saves ## Changes ### Data Model - `Spell` data class with `SpellType`, `SpellRange`, `SpellDuration` enums - `AdeptPower` data class with power point cost - `Magic` attribute added to `AttributeType` and `Attributes` - `spells` and `adeptPowers` lists added to `ShadowrunCharacter` - Helper methods: `powerPointBudget()`, `totalPowerPointsUsed()`, `activeSustainedSpells()` ### UI - `SpellPanel` - add/edit/remove spells, toggle sustained status, drain display - `AdeptPowerPanel` - add/edit/remove powers, power point budget display - New "Magic" tab in `CharacterSheetPage` ### Infrastructure - `MigrationV02ToV03` for schema backward compatibility - String resources for all new UI text - Test tags for all new components - Updated tests for new schema version and Magic attribute Closes #92
shahondin1624 added 1 commit 2026-04-05 02:38:30 +02:00
Add complete magic system support for Shadowrun 5e characters:
- Spell data model with type (Combat/Detection/Health/Illusion/Manipulation),
  range, duration, and drain value
- Adept power data model with power point cost
- Magic attribute added to Attributes
- SpellPanel UI with add/edit/remove and sustained spell tracking
- AdeptPowerPanel UI with power point budget display
- New "Magic" tab on the character sheet
- Schema migration v0.2 -> v0.3 for backward compatibility
- String resources, test tags, and test updates

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
shahondin1624 merged commit 736e033269 into main 2026-04-05 02:38:36 +02:00
shahondin1624 deleted branch feature/issue-92-spells-and-adept-powers-system 2026-04-05 02:38:37 +02:00
Sign in to join this conversation.