diff options
Diffstat (limited to 'Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/ToggleNode.cs')
-rw-r--r-- | Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/ToggleNode.cs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/ToggleNode.cs b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/ToggleNode.cs new file mode 100644 index 00000000..ba71fa0d --- /dev/null +++ b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/LogicToy/Nodes/ToggleNode.cs @@ -0,0 +1,27 @@ +using System.Linq; +using UnityEngine; + +namespace XNode.Examples.LogicToy { + [NodeWidth(140), NodeTint(70,70,100)] + public class ToggleNode : LogicNode { + [Input, HideInInspector] public bool input; + [Output, HideInInspector] public bool output; + public override bool led { get { return output; } } + + protected override void OnInputChanged() { + bool newInput = GetPort("input").GetInputValues<bool>().Any(x => x); + + if (!input && newInput) { + input = newInput; + output = !output; + SendSignal(GetPort("output")); + } else if (input && !newInput) { + input = newInput; + } + } + + public override object GetValue(NodePort port) { + return output; + } + } +}
\ No newline at end of file |