✅ Purifying flame aoe at phase start
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_familiars.py::test_purifying_flame_aoe_at_phase_start |
Purifying Flame deals PWR Fixed Damage to ALL local demons at start
Preconditions
-
Lane 0: P1's Purifying Flame (102_1) — PWR=4.
-
Lane 0: P2's Duban (001) — 0 damage.
-
Lane 0: P1's another ally Murmur (002) — 0 damage.
Action
- Fire MAIN_PHASE_START event for P1.
new_state = fire_event(
state,
GameEvent(
event_type=EventType.MAIN_PHASE_START,
source=None,
target=None,
value=None,
side=Side.PLAYER_1,
lane=None,
),
)
duban_after = next(d for d in new_state.demons if d.unit_id == "001")
murmur_after = next(d for d in new_state.demons if d.unit_id == "002")
Expected Postconditions
-
Duban damage = 4 (PWR fixed).
-
Murmur damage = 4 (ally — friendly fire).
Assertions
assert duban_after.damage == pwr, f"Duban should have {pwr} damage from Purifying Flame, got {duban_after.damage}"
assert murmur_after.damage == pwr, (
f"Murmur (ally) should also have {pwr} damage (friendly fire — 'All Local Demons'), "
f"got {murmur_after.damage}"
)