ProtoFlux:FireOnChange: Difference between revisions

From Resonite Wiki
cat
Line 52: Line 52:


[[Category:ProtoFlux:Flow]]
[[Category:ProtoFlux:Flow]]
[[Category:Listener nodes]]

Revision as of 01:22, 13 April 2025

Fire On Change
OnlyForUser
OnChanged
Value
Flow
This page is marked for deletion.

Reason: useless template

Please use the article's talk page if you would like to discuss or contest deletion.

See the Resonite Wiki's deletion policy for more details.
Admins: Please check the talk page for any discussions on the matter. Remember to remove all redirects, links, and transclusions relating to this page if deleted.
This page was last edited by Yosh at 01:22, 13 April 2025 (UTC)

Using this node with Local User or no user input may cause undesired outcomes.

Fire On Change Nodes will only fire if the OnlyForUser (User) provided has seen the value on their local machine change.

When this node triggers from the OnlyForUser (User) provided it can be used to execute code that requires the impulse be from a specific user. This is useful for things like:

  • changing world properties
  • physics
  • cloud variables
  • other Local User sensitive nodes.

This node does not runs the calculation on every frame[1][2].

Inputs

OnlyForUser (User)

Is the User "watching" for changes, if the Value (Generic) is localized and only changes for the OnlyForUser User, then it will send out a impulse for every change vs someone else who wouldn't see those changes.

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. If the desired behavior is for an impulse to fire by every user that detects a change for them locally, then use the local version of this node, which is linked at the bottom of the page.

Value (Generic)

The value or reference that OnlyForUser (User) should watch for changes on their client.

Outputs

OnChanged (impulse)

Will fire a single impulse from the OnlyForUser (User) input every time the value provided changes.

Use Notes

Because FireOnChange functions based on the trigger for whatever node it is connected to, it may not fire when the node it is connected to is changed if that node does not account for the calculation before it. Therefore, if a node is firing unreiably, an easy fix would be to connect FireOnChange's value to a node below it, preferably whatever value is most critical to the change.[1]

Examples

See Also

Sources