Skip to main content

✅ Nephilim shield grants def to abaddon

CategoryAbility
StatusPassing
Testtests/test_abilities_familiars.py::test_nephilim_shield_grants_def_to_abaddon

Shield of Nephilim grants Abaddon +2 DEF as a status.

Preconditions

  • Lane 0: P1's Abaddon (028) — READIED.

  • Lane 0: P1's Nephilim shield (028_3) — READIED.

  • P1 AP: 5.

  • quick_window_open = True (Quick action).

Action

  • Execute Shield of Nephilim (ability 1 on 028_3).
from engine.abilities import execute_ability

state = make_game_state()
state.players[Side.PLAYER_1].ap = 5
state.current_player = Side.PLAYER_1
state.quick_window_open = True

abaddon = make_demon("028", lane=0, owner=Side.PLAYER_1)
state = place_demon(state, abaddon)
abaddon = state.demons[-1]

nephilim = make_familiar_demon("028_3", lane=0, owner=Side.PLAYER_1)
state = place_demon(state, nephilim)
nephilim = state.demons[-1]

new_state = execute_ability(state, nephilim, 1, targets=[])

abaddon_after = next(d for d in new_state.demons if d.unit_id == "028")
def_mod = get_stat_modifier(new_state, abaddon_after, "def")

Expected Postconditions

  • Abaddon has +2 DEF status effect.

  • P1 AP = 4.

Assertions

assert def_mod == 2, f"Abaddon should have +2 DEF status, got {def_mod}"
assert new_state.players[Side.PLAYER_1].ap == 4