diff --git a/Languages/English/Keyed/Keys.xml b/Languages/English/Keyed/Keys.xml
index cc9a74c5..224be516 100644
--- a/Languages/English/Keyed/Keys.xml
+++ b/Languages/English/Keyed/Keys.xml
@@ -55,6 +55,8 @@
{Grappler} is dead
{Exec} is dead
+ {Grappler} is stunned
+ {Exec} is stunned
{Target} is not adjacent to {Exec}, and cannot be lassoed or walked to.
{Target} cannot be reached
{Target} is dead
diff --git a/Source/ThingGenerator/Controller/ActionController.cs b/Source/ThingGenerator/Controller/ActionController.cs
index 111ab1b7..be796125 100644
--- a/Source/ThingGenerator/Controller/ActionController.cs
+++ b/Source/ThingGenerator/Controller/ActionController.cs
@@ -77,6 +77,10 @@ public GrappleAttemptReport GetGrappleReport(in GrappleAttemptRequest req)
if (req.Grappler.Downed)
return new GrappleAttemptReport(req, "Downed");
+ // Stunned.
+ if (req.Grappler.stances?.stunner.Stunned ?? false)
+ return new GrappleAttemptReport(req, "Stunned");
+
// Check if grappler is in an animation.
if (req.Grappler.IsInAnimation())
return new GrappleAttemptReport(req, "SelfInAnimation");
@@ -227,6 +231,13 @@ public IEnumerable GetExecutionReport(ExecutionAttemptRe
yield break;
}
+ // Check stunned.
+ if (req.Executioner.stances?.stunner.Stunned ?? false)
+ {
+ yield return new ExecutionAttemptReport(req, "Stunned");
+ yield break;
+ }
+
// Check if grappler is in an animation.
if (req.Executioner.IsInAnimation())
{