✅ Noxious gas applies minus2 def to all demons
| Category | Interaction |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestStolas::test_noxious_gas_applies_minus2_def_to_all_demons |
Stolas's Noxious Gas applies -2 DEF to ALL demons on the field, including allies.
Action
- Stolas uses Noxious Gas (Quick, 4 AP, exhaust)
result = execute_ability(state, stolas_p, ability_idx=1)
stolas_after = next(d for d in result.demons if d.unit_id == "022")
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")
Expected Postconditions
-
Stolas: -2 DEF status, EXHAUSTED
-
Murmur (ally): -2 DEF status
-
Duban (enemy): -2 DEF status
Assertions
for demon_after, name in [(stolas_after, "Stolas"), (murmur_after, "Murmur"), (duban_after, "Duban")]:
effects = get_active_effects_on(result, demon_after)
def_total = sum(e.value for e in effects if e.stat == "def")
assert def_total == -2, f"{name} must have -2 DEF. Got {def_total}."