Skip to main content

✅ Normal attack allows zagan reposition

CategoryInteraction
StatusPassing
Testtests/test_abilities_actions.py::test_normal_attack_allows_zagan_reposition

Control test: a normal ability triggers Zagan's reposition passive via ACTION_DECLARED and does not suppress Quick.

Preconditions

  • P1 Main Phase, P1 has 5 AP

  • Lane 0: P1's Sabnock (#003) — READIED

  • Lane 0: P2's Flauros (#013) — READIED (target)

  • Lane 2: P2's Zagan (#024) — READIED

Action

  • P1 activates Sabnock's Pink Haze (ability idx=0, Quick, 1 AP) targeting Flauros
result = execute_ability(state, sabnock_p, ability_idx=0, targets=[flauros_p])
zagan_after = next(d for d in result.demons if d.unit_id == "024")

Expected Postconditions

  • ACTION_DECLARED fires → Zagan repositions (moves out of lane 2)

  • state.suppress_quick_response = False

Assertions

assert zagan_after.lane != 2, (
f"Zagan should reposition (ACTION_DECLARED fires for normal abilities). "
f"Still in lane {zagan_after.lane}"
)