Variable

Category: Listener Tier: Basic

Purpose

Monitors Global or Local variables and triggers when a comparison condition is met.

When To Use

  • Health checks (HP < 20 triggers low health warning)

  • Score milestones (Score >= 100 triggers achievement)

  • Ammo management (Ammo == 0 triggers reload)

  • State machines (State == “attacking” triggers animation)

  • Resource monitoring (Energy > 50 allows special ability)

Runtime Behavior

  • Is Empty / Is Not Empty cover String length 0, Array empty, Dictionary empty, NIL.

  • In Range is numeric and works on the resolved subfield value, so e.g. remaining_seconds In Range [0, 30] fires when a countdown timer enters the last 30 seconds.

  • _system_time is published every frame by GlobalVariablesManager._process - read-only, name-reserved.

  • Transform field extraction keeps Expose’s full-transform variable usable in graph decisions without requiring separate position/rotation/scale variables for every case.

Generated UI Mockup — showing expanded properties
Variable
-
x
Name:
Label this brick...
Invert

Properties

This brick does not expose a generated property table yet. See the source specification for implementation notes.

Example Use Cases

Low Health Warning:

Property(scope=Local, name=HP, value=20, test=Less) -> AND -> Material(red)
// Turn red when health drops below 20

Score Milestone:

Property(scope=Global, name=Score, value=100, test=Greater or Equal) -> AND -> Sound(achievement)
// Play sound when score reaches 100

Ammo Check Before Shooting:

Sample inspector layout removed for compatibility.

State Machine Trigger:

Property(scope=Local, name=State, value=dead, test=Equal) -> AND -> Visibility(false)
// Hide object when state is "dead"