✅ Nephilim greaves moves abaddon
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_familiars.py::test_nephilim_greaves_moves_abaddon |
Greaves of Nephilim moves Abaddon 1 lane.
Preconditions
-
Lane 1: P1's Abaddon (028).
-
Lane 0: P1's Nephilim greaves (028_4) — READIED.
-
P1 AP: 3.
Action
- Execute Greaves of Nephilim (ability 1 on 028_4)
from engine.abilities import execute_ability
state = make_game_state()
state.players[Side.PLAYER_1].ap = 3
state.current_player = Side.PLAYER_1
state.quick_window_open = True
abaddon = make_demon("028", lane=1, owner=Side.PLAYER_1)
state = place_demon(state, abaddon)
abaddon = state.demons[-1]
nephilim = make_familiar_demon("028_4", lane=0, owner=Side.PLAYER_1)
state = place_demon(state, nephilim)
nephilim = state.demons[-1]
new_state = execute_ability(state, nephilim, 1, targets=[], choices={"target_lane": 0})
abaddon_after = next(d for d in new_state.demons if d.unit_id == "028")
Expected Postconditions
-
Abaddon lane = 0.
-
P1 AP = 2 (spent 1).
Assertions
assert abaddon_after.lane == 0, f"Abaddon should be in lane 0, got {abaddon_after.lane}"
assert new_state.players[Side.PLAYER_1].ap == 2