- Add DamageCalculationResult model for transparent damage breakdown - Implement _calculate_attack_damage with W/R modifiers (additive/multiplicative) - Add _execute_attack_effect for future effect system integration - Add _build_attack_message for detailed damage breakdown in messages - Update _execute_attack to use new calculation pipeline - Bulbasaur now properly weak to Lightning in walkthrough demo New features: - Weakness applies bonus damage (additive +X or multiplicative xN) - Resistance reduces damage (minimum 0) - State changes include weakness/resistance details for UI - Messages show damage breakdown (e.g. 'base 10 +20 weakness') Tests: 7 new tests covering additive/multiplicative W/R, type matching, minimum damage floor, knockout triggers, and state change details |
||
|---|---|---|
| .. | ||
| test_effects | ||
| test_models | ||
| __init__.py | ||
| conftest.py | ||
| test_config.py | ||
| test_coverage_gaps.py | ||
| test_engine.py | ||
| test_evolution_stack.py | ||
| test_rng.py | ||
| test_rules_validator.py | ||
| test_turn_manager.py | ||
| test_visibility.py | ||
| test_win_conditions.py | ||