Skip to main content

✅ Thousand year curse applies x def to all enemies

CategoryInteraction
StatusPassing
Testtests/test_abilities_complex.py::TestBifronsThousandYearCurse::test_thousand_year_curse_applies_x_def_to_all_enemies

Bifrons spends X AP to give all enemy demons -X DEF status for this phase.

Action

  • Bifrons uses Thousand Year Curse (3 AP, exhaust, X=3)

  • Status: All Enemy Demons have -3 DEF

result = execute_ability(state, bifrons_p, ability_idx=0, choices={"x": 3})
duban_after = next(d for d in result.demons if d.unit_id == "001")
murmur_after = next(d for d in result.demons if d.unit_id == "002")

Expected Postconditions

  • All enemy demons: -3 DEF status active

  • Allied demons: no status applied

  • Bifrons: EXHAUSTED

Assertions

duban_effects = get_active_effects_on(result, duban_after)
assert any(e.stat == "def" and e.value == -3 for e in duban_effects)
# Allied demon Murmur unaffected
murmur_effects = get_active_effects_on(result, murmur_after)
assert not any(e.stat == "def" for e in murmur_effects)