Skip to main content

Condition

This node evaluates a boolean condition and routes flow accordingly.

The Condition node is similar to the If node but with slightly different behavior regarding evaluation timing.

The Condition node checks a boolean input. It can evaluate immediately when the input changes (reactive) or wait for a signal (imperative). It provides separate signal outputs for True and False states.

Inputs​

General​

DataDescription
ConditionThe boolean value to evaluate.

Actions​

SignalDescription
EvaluateManually triggers the evaluation. If this input is connected, the node waits for this signal. If disconnected, the node evaluates immediately when Condition changes.

Outputs​

Events​

SignalDescription
On TrueTriggered if the condition is true.
On FalseTriggered if the condition is false.

Booleans​

DataDescription
Is TrueBoolean value of the condition.
Is FalseBoolean value of the inverse condition (!condition).

Usage​

Reactive vs. Manual​

  1. Reactive (Default): Leave Evaluate disconnected. Whenever the Condition input changes (e.g., a variable updates), the node immediately fires On True or On False.
  2. Manual: Connect a signal to Evaluate. The node ignores changes to Condition until Evaluate is triggered. This behaves exactly like the If node.

Example Use Cases​

  1. Game Over Check (Reactive): Connect Health <= 0 to Condition. As soon as health drops, On True fires "Game Over".
  2. Form Submit (Manual): Connect Is Valid to Condition and "Submit Button" to Evaluate. Only checks validity when button is clicked.

Detailed Behavior​

  • Dual Mode: The behavior changes based on whether the Evaluate port has a connection. This makes it more versatile than the standard If node.
  • Outputs: Provides both signal and boolean data outputs for convenience.

Troubleshooting​

  • Unexpected Firing: If Evaluate is empty, the node fires on every data change. If you only want it to fire once or on command, connect the Evaluate input.