✅ Non owner demon executes allied ability
| Category | Interaction |
| Status | Passing |
| Test | tests/test_abilities_actions.py::test_non_owner_demon_executes_allied_ability |
Flauros performs Sekhmet's Relentless Attack (Allied) via owner_unit_id parameter. Uses Flauros's own PWR, not Sekhmet's.
Preconditions
-
P1 Main Phase, P1 has 5 AP
-
Lane 0: P1's Sekhmet (#065) — READIED
-
Lane 0: P1's Flauros (#013) — READIED, PWR=2
-
Lane 0: P2's Sabnock (#003) — READIED (target, no DEF passive)
Action
- Flauros performs Relentless Attack (owner_unit_id="065", ability_idx=1) targeting Sabnock
result = execute_ability(
state, flauros_p, ability_idx=1, targets=[target_p],
owner_unit_id="065",
)
target_after = next(d for d in result.demons if d.unit_id == "003")
flauros_after = next(d for d in result.demons if d.unit_id == "013")
Expected Postconditions
-
Sabnock takes 2 damage (Flauros's PWR=2, no DEF on Sabnock)
-
Flauros gets "cannot_perform_relentless_attack" tag
Assertions
assert target_after.damage == 2, f"Expected 2 damage (Flauros PWR), got {target_after.damage}"