Skip to main content

✅ Satan splash fires after taking damage

CategoryInteraction
StatusPassing
Testtests/test_abilities_complex.py::TestSatanFieldPassive::test_satan_splash_fires_after_taking_damage

Satan's passive: when taking X damage, deal X-2 Fixed Damage to all other local demons.

Action

  • Fire DAMAGE_RECEIVED event with target=Satan, value=5 (5 damage taken)

  • Satan splash: 5 - 2 = 3 Fixed Damage to all other local demons

result = fire_event(state, event)
murmur_after = next(d for d in result.demons if d.unit_id == "002")
duban_after = next(d for d in result.demons if d.unit_id == "001")
satan_after = next(d for d in result.demons if d.unit_id == "109")

Expected Postconditions

  • Murmur: 3 damage (splash from Satan's passive)

  • Duban: 3 damage (splash from Satan's passive)

  • Satan: 0 damage from this trigger (trigger is NOT self-damage)

Assertions

assert murmur_after.damage == 3
assert duban_after.damage == 3
assert satan_after.damage == 0