✅ Lucifer reflects aoe damage
| Category | Interaction |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestLuciferDamageReflection::test_lucifer_reflects_aoe_damage |
Focalor uses Great Blue Spot (AoE) on a lane containing
Preconditions
-
P2 Main Phase, P2 has 6 AP
-
Lane 1: P1's Lucifer (#088) — 15 HP, 0 damage, READIED
-
Lane 1: P2's Murmur (#002) — 9 HP, 0 damage, READIED (local enemy)
-
Lane 0: P2's Focalor (#069) — READIED, PWR=5 (caster, different lane)
Action
-
P2 activates Great Blue Spot (idx=0, 4 AP, exhaust) targeting lane 1
-
3 x PWR = 15 Fixed Damage, divided between 2 demons = 8 each (ceil(15/2))
Expected Postconditions
-
Lucifer: 8 damage from AoE
-
Lucifer's reflection fires: deals 8 Fixed Damage to Murmur (local other demon)
-
Murmur: 8 (AoE) + 8 (Lucifer reflection) = 16 damage → fatally wounded (HP=9)
-
Murmur removed from board
Assertions
assert lucifer_after is not None, "Lucifer should survive (8 < 15 HP)"
assert lucifer_after.damage == 8, (
f"Lucifer should have 8 AoE damage. Got {lucifer_after.damage}"
)
# Murmur took 8 AoE + 8 reflection = 16 -> fatally wounded and removed
murmur_after = next(
(d for d in result.demons if d.unit_id == "002"), None
)
assert murmur_after is None, (
f"Murmur should be removed (8 AoE + 8 reflection = 16 > 9 HP). "
)