diff --git a/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs
new file mode 100644
index 0000000..14a5475
--- /dev/null
+++ b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs
@@ -0,0 +1,21 @@
+using MoreMountains.TopDownEngine;
+using MoreMountains.Tools;
+using TheBitCave.MMToolsExtensions.AI.Graph;
+using UnityEngine;
+
+namespace TheBitCave.TopDownEngineExensions.AI.Graph
+{
+ ///
+ /// A node representing a TopDown Engine action.
+ ///
+ [CreateNodeMenu("AI/Action/Crouch Start")]
+ public class AIActionCrouchStartNode : AIActionNode
+ {
+ public override AIAction AddActionComponent(GameObject go)
+ {
+ var action = go.AddComponent();
+ action.Label = label;
+ return action;
+ }
+ }
+}
\ No newline at end of file
diff --git a/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs.meta b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs.meta
new file mode 100644
index 0000000..cb9c348
--- /dev/null
+++ b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStartNode.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 15eba69e1c845464697e4c6c3f6061df
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs
new file mode 100644
index 0000000..c8a912a
--- /dev/null
+++ b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs
@@ -0,0 +1,21 @@
+using MoreMountains.TopDownEngine;
+using MoreMountains.Tools;
+using TheBitCave.MMToolsExtensions.AI.Graph;
+using UnityEngine;
+
+namespace TheBitCave.TopDownEngineExensions.AI.Graph
+{
+ ///
+ /// A node representing a TopDown Engine action.
+ ///
+ [CreateNodeMenu("AI/Action/Crouch Stop")]
+ public class AIActionCrouchStopNode : AIActionNode
+ {
+ public override AIAction AddActionComponent(GameObject go)
+ {
+ var action = go.AddComponent();
+ action.Label = label;
+ return action;
+ }
+ }
+}
\ No newline at end of file
diff --git a/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs.meta b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs.meta
new file mode 100644
index 0000000..1778e8b
--- /dev/null
+++ b/TopDownEngineExtensions/Scripts/AI/Graph/Actions/AIActionCrouchStopNode.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 98de1fb13b4289345a7f0eeb4b97bbd8
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: