add on every frame info |
across updates |
||
(6 intermediate revisions by 4 users not shown) | |||
Line 13: | Line 13: | ||
|}} | |}} | ||
The '''FireOnChange''' node will [[Type:IExecutionChangeListener`1|listen]] for changes on its input and fire an [[impulses|impulse]] for the specified [[user]] whenever there is a change in value across [[update|updates]]. | |||
This | This can be useful for providing complex behavior for a specific user whenever a value changes that existing components do not provide. | ||
== Inputs == | == Inputs == | ||
=== OnlyForUser ([[Type:User|User]]) === | === OnlyForUser ([[Type:User|User]]) === | ||
The user that will listen to changes and fire the impulse. | |||
{{ | {{FireOn user information}} | ||
=== Value (Generic) === | === Value (Generic) === | ||
The value or | The value or object that should be listened to for changes. | ||
== Outputs == | == Outputs == | ||
=== OnChanged ([[Impulses|impulse]]) === | === OnChanged ([[Impulses|impulse]]) === | ||
Fires a single [[Impulses|impulse]] from the specified user whenever the provided input changes value across updates. | |||
== | == See also == | ||
< | * [[ProtoFlux:FireOnLocalChange]] will fire an impulse for <em>every</em> user that detects a change rather than a specific user. | ||
* [[ProtoFlux:FireOnTrue]] | |||
* [[ProtoFlux:FireOnFalse]] | |||
* [[ProtoFlux: | |||
* [[ProtoFlux: | |||
[[Category:ProtoFlux:Flow]] | [[Category:ProtoFlux:Flow]] | ||
[[Category:Listener nodes]] |
Latest revision as of 08:48, 19 September 2025
The FireOnChange node will listen for changes on its input and fire an impulse for the specified user whenever there is a change in value across updates.
This can be useful for providing complex behavior for a specific user whenever a value changes that existing components do not provide.
Inputs
OnlyForUser (User)
The user that will listen to changes and fire the impulse.
For best practice, this should never be left null
or evaluated differently based on the user (e.g. via LocalUser). If this input is null
and the node is parented under a user, then the impulse will be fired for said user. If this input is null
and not parented under a user, or if this input evaluates differently for different users, then the impulse will tend to be fired for the first user that sees the change in value. This is usually the one who caused the change in the first place. This could cause inconsistent behavior unless carefully managed.
Value (Generic)
The value or object that should be listened to for changes.
Outputs
OnChanged (impulse)
Fires a single impulse from the specified user whenever the provided input changes value across updates.
See also
- ProtoFlux:FireOnLocalChange will fire an impulse for every user that detects a change rather than a specific user.
- ProtoFlux:FireOnTrue
- ProtoFlux:FireOnFalse