fix(spells): correct the fear condition
PF1e (SRD spells/fear.md): creatures become panicked unless they succeed on a Will save - the JSON applied frightened instead. Condition fixed to panicked. The shaken-for-1-round on a successful save needs partial-save support for conditions and the 30-ft cone needs a cone template, neither of which the engine has; both documented in README as out of scope rather than built. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -522,16 +522,17 @@ class TestHoldPerson:
|
||||
|
||||
|
||||
class TestFear:
|
||||
"""Given: a caster casting Fear (will negates, frightened)
|
||||
"""Given: a caster casting Fear (SRD spells/fear.md: panicked unless the
|
||||
Will save succeeds)
|
||||
When: target fails save
|
||||
Then: frightened condition is applied."""
|
||||
Then: panicked condition is applied."""
|
||||
|
||||
def test_failed_save_applies_frightened(self) -> None:
|
||||
def test_failed_save_applies_panicked(self) -> None:
|
||||
caster = _make_caster()
|
||||
target = _make_target()
|
||||
engine, c, t = _make_engine(caster, target, [2])
|
||||
engine._cast_spell(c, t, "Fear")
|
||||
assert any(ac.condition.name == "frightened" for ac in t.active_conditions)
|
||||
assert any(ac.condition.name == "panicked" for ac in t.active_conditions)
|
||||
|
||||
|
||||
class TestCureLightWounds:
|
||||
|
||||
Reference in New Issue
Block a user