Skip to main content

✅ Remove damage different lane not blocked

CategoryAbility
StatusPassing
Testtests/test_operations.py::test_remove_damage_different_lane_not_blocked

Kimaris's anti-heal is Local (same-lane only). A demon in another

Preconditions

  • Lane 0: P1's Kimaris (#057) — 15 HP, 0 damage, READIED

  • Lane 2: P2's Duban (#001) — 6 HP, 4 damage, READIED

Action

  • remove_damage(state, target=Duban, amount=2)
state = make_game_state()
kimaris = make_demon("057", lane=0, owner=Side.PLAYER_1, instance_id=1)
duban = make_demon("001", lane=2, owner=Side.PLAYER_2, instance_id=2, damage=4)
state = place_demon(state, kimaris)
state = place_demon(state, duban)

duban_placed = next(d for d in state.demons if d.unit_id == "001")
new_state = remove_damage(state, duban_placed, 2)

duban_after = next(d for d in new_state.demons if d.unit_id == "001")

Expected Postconditions

  • Duban.damage = 2 (heal applies — different lane from Kimaris)

Assertions

assert duban_after.damage == 2, "Different lane — heal must apply normally"