✅ Leraje counters self damaging ability
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestLerajeCounterAttack::test_leraje_counters_self_damaging_ability |
Tests interaction between Leraje, Auns.
Preconditions
-
P1 Main Phase, P1 has 6 AP
-
Lane 0: P1's Leraje (#091) — READIED, PWR=3
-
Lane 1: P2's Auns (#042) fused with Ronove (#035) — READIED
Action
-
Fire DAMAGE_RECEIVED on Auns in lane 1 (simulating self-damage), value=2
-
Leraje in lane 0 sees damage on a demon in a different lane (Distant range)
-
Leraje counter-attacks Auns
Expected Postconditions
-
Auns takes Leraje's PWR damage (3)
-
Leraje stays READIED (ignores exhaust costs)
-
P1 AP: 5 (6 - 1 for counter-attack)
Assertions
assert auns_after.damage > 0, (
f"Auns should take damage from Leraje's counter-attack. Got {auns_after.damage}"
)
assert leraje_after.state == DemonState.READIED, (
f"Leraje should stay READIED (ignores exhaust). Got {leraje_after.state}"
)
assert result.players[Side.PLAYER_1].ap == 5, (
f"P1 AP should be 5 (6 - 1 for discounted counter-attack). Got {result.players[Side.PLAYER_1].ap}"
)