Skip to main content

✅ Lucifer reflects aoe damage

CategoryInteraction
StatusPassing
Testtests/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). "
)