Sudo-Generic -> Pseudo-generic |
TheAutopilot (talk | contribs) added example image |
||
(One intermediate revision by one other user not shown) | |||
Line 27: | Line 27: | ||
Examples: [[Type:Double | Double]], [[Type:Float | Float]], [[Type:Int | Int]] and [[Type:TimeSpan | TimeSpan]]. | Examples: [[Type:Double | Double]], [[Type:Float | Float]], [[Type:Int | Int]] and [[Type:TimeSpan | TimeSpan]]. | ||
{{Note|Delays of less than 0.5 milliseconds will be rounded to zero and may cause Resonite to hang if used inside of a loop.|danger}} | |||
== Outputs == | == Outputs == | ||
Line 32: | Line 34: | ||
=== Next ([[Impulses|Continuation]]) === | === Next ([[Impulses|Continuation]]) === | ||
Fires | Fires on the next game tick once the given duration has passed since the Delay was triggered '''and''' ''OnTriggered'' has finished. If ''OnTriggered'' takes longer than the delay duration to finish, ''Next'' will be executed immediately after. | ||
=== OnTriggered ([[Impulses#Async|AsyncCall]]) === | === OnTriggered ([[Impulses#Async|AsyncCall]]) === | ||
Fires | Fires immediately after the Delay is triggered. This impulse chain will block ''Next'', e.g. if it contains another Delay with a higher duration. | ||
== Examples == | == Examples == | ||
<gallery widths=480px heights= | <gallery widths=480px heights=160px> | ||
File:Protoflux_example_Delay.webp| | File:Protoflux_example_Delay.webp|A [[wikipedia:Useless_machine|"Useless Machine"]] that resets itself a second after pressing the [[ProtoFlux:Async_Call_Input|Async Call Input]]. Note that every click will cause a delayed impulse that will reset the state. This may be unwanted if the goal is to reset a second after the last press. | ||
</gallery> | </gallery> | ||
[[Category:ProtoFlux:Flow]] | [[Category:ProtoFlux:Flow]] |
Latest revision as of 14:49, 1 December 2024
Delay
Flow
Delay is a ProtoFlux node that allows for delaying an Async execution for the provided Duration (Pseudo-generic) before continuing.
Inputs
* (AsyncCall)
Start the delay.
Duration (Pseudo-generic)
How long to delay for in seconds or timespan.
Outputs
Next (Continuation)
Fires on the next game tick once the given duration has passed since the Delay was triggered and OnTriggered has finished. If OnTriggered takes longer than the delay duration to finish, Next will be executed immediately after.
OnTriggered (AsyncCall)
Fires immediately after the Delay is triggered. This impulse chain will block Next, e.g. if it contains another Delay with a higher duration.
Examples
-
A "Useless Machine" that resets itself a second after pressing the Async Call Input. Note that every click will cause a delayed impulse that will reset the state. This may be unwanted if the goal is to reset a second after the last press.