Description
Implement the Strategy pattern for combat actions using ICombatStrategy interface.
Depends on: Character base class issue
ICombatStrategy Interface
- Execute(Character attacker, Character target) returns CombatResult
CombatResult Class
- DamageDealt (int)
- AttackerName (string)
- TargetName (string)
- Message (string)
Concrete Strategy Implementations
MeleeStrategy
- Direct physical damage calculation
- Uses attacker's AttackPower and target's Defense
MagicStrategy
- Magic damage that partially bypasses defense
- Different calculation than melee
RangedStrategy
- Ranged attack with different mechanics
- Unique damage calculation
Integration
- Add CombatStrategy property to Character base class
- Include code comment explaining Strategy pattern choice
Acceptance Criteria
Description
Implement the Strategy pattern for combat actions using ICombatStrategy interface.
Depends on: Character base class issue
ICombatStrategy Interface
CombatResult Class
Concrete Strategy Implementations
MeleeStrategy
MagicStrategy
RangedStrategy
Integration
Acceptance Criteria