✅ Cancer ignore range is unconditional
| Category | Ability |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestCancerIgnoresRange::test_cancer_ignore_range_is_unconditional |
Regardless of damage, Cancer's abilities ignore range.
Preconditions
- Cancer (#116) on field with 0 damage AND another Cancer with 14 damage
Action
- Call ignores_range(cancer) for both
from engine.abilities_complex import ignores_range
c_healthy = make_demon("116", lane=0, owner=Side.PLAYER_1, damage=0)
c_wounded = make_demon("116", lane=1, owner=Side.PLAYER_1, damage=14)
state, placed = _make_state_with_demons(c_healthy, c_wounded)
Expected Postconditions
- Both return True (no conditional threshold in NEW TEXT)
Assertions
assert ignores_range(placed[0]) is True, "Healthy Cancer ignores range"
assert ignores_range(placed[1]) is True, (
"Heavily damaged Cancer STILL ignores range (NEW TEXT removed the <=9 threshold)"
)