fix(rules): fatigued -2 Dex now costs -1 AC and -1 Reflex
This commit is contained in:
@@ -99,12 +99,15 @@ SICKENED = Condition(
|
||||
)
|
||||
|
||||
# Fatigued: -2 STR, -2 DEX; can't run or charge (CRB)
|
||||
# Approximation: -1 attack (STR/DEX), -1 damage (STR)
|
||||
# Approximation: -1 attack, -1 damage (STR/DEX), -1 AC and -1 Ref (the -2 DEX
|
||||
# = -1 to each, same modelling as exhausted/entangled).
|
||||
FATIGUED = Condition(
|
||||
name="fatigued",
|
||||
modifiers=(
|
||||
StatModifier(target="attack", value=-1),
|
||||
StatModifier(target="damage", value=-1),
|
||||
StatModifier(target="ac", value=-1),
|
||||
StatModifier(target="ref", value=-1),
|
||||
),
|
||||
cant_charge=True,
|
||||
)
|
||||
|
||||
@@ -138,6 +138,14 @@ class TestConditionData:
|
||||
def test_fatigued_flags(self) -> None:
|
||||
assert FATIGUED.cant_charge is True
|
||||
|
||||
def test_fatigued_minus2_dex_gives_minus1_ac_and_ref(self) -> None:
|
||||
# SRD: fatigued takes -2 to Dexterity => -1 AC and -1 Reflex.
|
||||
mods = {m.target: m.value for m in FATIGUED.modifiers}
|
||||
assert mods["attack"] == -1
|
||||
assert mods["damage"] == -1
|
||||
assert mods["ac"] == -1
|
||||
assert mods["ref"] == -1
|
||||
|
||||
def test_flat_footed_flags(self) -> None:
|
||||
assert FLAT_FOOTED.denies_dex_to_ac is True
|
||||
assert FLAT_FOOTED.cant_aoo is True
|
||||
|
||||
Reference in New Issue
Block a user