1
0
mirror of https://github.com/Siccity/xNode.git synced 2026-03-26 22:49:02 +08:00
xNode/Samples~/LogicToy/Nodes/PulseNode.cs
Wang Cong 7b480b6242 changed: move folder Examples into Samples~
In Package Manager UI 2.0 (compatible with Unity 2019.1), you can include samples in a package.
    https://forum.unity.com/threads/samples-in-packages-manual-setup.623080/
2019-10-21 11:37:56 +08:00

32 lines
792 B
C#

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;
}
}
}