Skip to main content

✅ Iskandar distant attacker fused bottom no reduction

CategoryAbility
StatusPassing
Testtests/test_abilities_complex.py::TestIskandarFusedBottomProjects::test_iskandar_distant_attacker_fused_bottom_no_reduction

Sanity — Distant attacker's damage is NOT reduced.

Preconditions

  • Lane 0: P1's fused Murmur/Iskandar (HP=12)

  • Lane 2: P2's Sabnock (Distant from fused demon)

Action

  • deal_damage(state, Sabnock, fused, 3)
from engine.operations import deal_damage

fused = make_fused_demon("002", "104", lane=0, owner=Side.PLAYER_1)
attacker = make_demon("003", lane=2, owner=Side.PLAYER_2) # Distant

state, placed = _make_state_with_demons(fused, attacker, ap=3)
fused_p, attacker_p = placed

result = deal_damage(state, attacker_p, fused_p, 3)

fused_after = next(d for d in result.demons if d.instance_id == fused_p.instance_id)

Expected Postconditions

  • Fused demon: 3 damage (no reduction — source is Distant)

Assertions

assert fused_after.damage == 3, (
f"Distant attacker must not trigger Iskandar's reduction. "
f"Got {fused_after.damage}."
)