diff options
Diffstat (limited to 'Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/PulseNode.cs')
-rw-r--r-- | Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/PulseNode.cs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/PulseNode.cs b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/PulseNode.cs new file mode 100644 index 00000000..44c0dcb8 --- /dev/null +++ b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/PulseNode.cs @@ -0,0 +1,32 @@ +using UnityEngine; + +namespace XNode.Examples.LogicToy { + [NodeWidth(140), NodeTint(70,100,70)] + public class PulseNode : LogicNode, ITimerTick { + [Space(-18)] + public float interval = 1f; + [Output, HideInInspector] public bool output; + public override bool led { get { return output; } } + + private float timer; + + public void Tick(float deltaTime) { + timer += deltaTime; + if (!output && timer > interval) { + timer -= interval; + output = true; + SendSignal(GetPort("output")); + } else if (output) { + output = false; + SendSignal(GetPort("output")); + } + } + + /// <summary> This node can not receive signals, so this is not used </summary> + protected override void OnInputChanged() { } + + public override object GetValue(NodePort port) { + return output; + } + } +}
\ No newline at end of file |