summaryrefslogtreecommitdiff
path: root/Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs')
-rw-r--r--Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs50
1 files changed, 50 insertions, 0 deletions
diff --git a/Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs b/Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs
new file mode 100644
index 0000000..70032f2
--- /dev/null
+++ b/Runtime/Graphs/UnityEngine.Graphs/LogicNodeLibrary/Input/OnInputNode.cs
@@ -0,0 +1,50 @@
+using System;
+
+
+namespace UnityEngine.Graphs.LogicGraph
+{
+ public partial class InputNodes
+ {
+ public abstract class OnInputNode
+ {
+ protected IMonoBehaviourEventCaller m_GraphBehaviour;
+
+ protected float m_DeltaTime;
+ public float deltaTime { get { return m_DeltaTime; } }
+
+ public Action down;
+ public Action up;
+
+ protected OnInputNode () { }
+
+ protected OnInputNode (GraphBehaviour graphBehaviour)
+ {
+ m_GraphBehaviour = graphBehaviour;
+ m_GraphBehaviour.OnUpdate += OnBaseUpdate;
+ }
+
+ protected OnInputNode (IMonoBehaviourEventCaller graphBehaviour)
+ {
+ m_GraphBehaviour = graphBehaviour;
+ m_GraphBehaviour.OnUpdate += OnBaseUpdate;
+ }
+
+ private void OnBaseUpdate (float deltaTime)
+ {
+ m_DeltaTime = deltaTime;
+ OnUpdate ();
+ }
+
+ protected abstract void OnUpdate ();
+ }
+
+ public abstract class OnStateInputNode : OnInputNode
+ {
+ public Action onDown;
+ public Action onUp;
+
+ protected OnStateInputNode (GraphBehaviour graphBehaviour) : base (graphBehaviour) { }
+ protected OnStateInputNode (IMonoBehaviourEventCaller graphBehaviour) : base (graphBehaviour) { }
+ }
+ }
+}