24#include "../ECS_Entity.h"
ComponentTypeID GetComponentTypeID_Static()
C++14-compliant type-safe value container for task parameters.
std::string to_string() const
Converts the stored value to a string representation.
int AsInt() const
Returns the int value.
::Vector AsVector() const
Returns the Vector value.
EntityID AsEntityID() const
Returns the EntityID value.
float AsFloat() const
Returns the float value.
std::string m_stringValue
bool IsNone() const
Returns true if the value has not been set (type == None).
std::string AsString() const
Returns the string value.
bool AsBool() const
Returns the bool value.
TaskValue()
Default constructor: creates a value of type VariableType::None.
VariableType GetType() const
Returns the VariableType tag of the stored value.
union Olympe::TaskValue::PodData m_data
< Provides AssetID and INVALID_ASSET_ID
VariableType
Type tags used by TaskValue to identify stored data.
@ Int
32-bit signed integer
@ GlobalRef
Reference to a global blackboard key (scope "global:")
@ List
std::vector<TaskValue> (used by ForEach node)
@ Vector
3-component vector (Vector from vector.h)
@ None
Uninitialized / empty value.
@ EntityID
Entity identifier (uint64_t)
@ SubGraph
Teal — SubGraph call.
@ Delay
Yellow — Delay timer.
@ EntryPoint
Green — single "Out" exec pin.
ParameterBindingType
Describes how a parameter value is provided to a task node.
@ MathOperator
Math operator symbol (+, -, *, /, %) (from OperatorRegistry)
@ ConditionID
ID of a condition type (from ConditionRegistry)
@ AtomicTaskID
ID of an atomic task (from AtomicTaskUIRegistry)
@ SubGraphPath
File path to a sub-graph .ats file.
@ LocalVariable
Value is read from the local blackboard at runtime.
@ Literal
Value is embedded directly in the template.
ComparisonOp
The relational operator used in a ConditionPreset.
TaskNodeType
Identifies the role of a node in the task graph.
@ Selector
Executes children in order; stops on first success.
@ AtomicTask
Leaf node that executes a single atomic task.
@ While
Conditional loop (Loop / Completed exec outputs)
@ Sequence
Executes children in order; stops on first failure.
@ Decorator
Wraps a single child and modifies its behaviour.
@ DoOnce
Single-fire execution (reset via Reset pin)
@ Parallel
Executes all children simultaneously.
@ GetBBValue
Data node – reads a Blackboard key.
@ MathOp
Data node – arithmetic operation (+, -, *, /)
@ SetBBValue
Data node – writes a Blackboard key.
@ ForEach
Iterate over BB list (Loop Body / Completed exec outputs)
@ Switch
Multi-branch on value (N exec outputs)
@ Branch
If/Else conditional (Then / Else exec outputs)
@ Root
Entry point of the graph (exactly one per template)
@ VSSequence
Execute N outputs in order ("VS" prefix avoids collision with BT Sequence=1)
constexpr int32_t NODE_INDEX_NONE
Sentinel value for "no node" in node index / ID fields.
DataPinDir
Direction of a data pin on a Visual Script node.
@ Output
Value produced by the node.
@ Input
Value consumed by the node.
static std::string VariableTypeToString(VariableType type)
Converts a VariableType to its canonical string representation.
ExecPinRole
Role of an exec pin on a Visual Script node.
@ OutCompleted
End-of-loop output (While, ForEach, Delay, DoOnce)
@ OutLoop
Loop body output (While, ForEach)
@ Out
Normal output / Then.
@ OutCase
Switch case output (dynamically named)
@ OutElse
Else output (Branch)
@ In
Triggers execution of the node.
static TaskValue GetDefaultValueForType(VariableType type)
Returns a correctly-typed default TaskValue for the given VariableType.
Describes a single condition expression for Branch/While nodes.
std::string rightPin
If Pin mode: e.g. "Node#43.Out".
std::string rightMode
"Pin" | "Variable" | "Const"
std::string leftVariable
If Variable mode: e.g. "health".
TaskValue rightConstValue
If Const mode: e.g. TaskValue(100)
TaskValue leftConstValue
If Const mode: e.g. TaskValue(50)
std::string leftPin
If Pin mode: e.g. "Node#42.Out".
std::string leftMode
"Pin" | "Variable" | "Const"
std::string rightVariable
If Variable mode: e.g. "max_health".
std::string operatorStr
"==", "!=", "<", ">", "<=", ">="
VariableType compareType
Int, Float, Bool, String, Vector.
Describes a data pin declared on a Visual Script node.
TaskValue Default
Default value when not connected.
VariableType PinType
Type of the data.
std::string PinName
Pin name ("Value", "Result", etc.)
Describes an input or output parameter declared on a SubGraph file.
std::string Name
Parameter name (must match binding keys)
VariableType Type
Expected variable type.
Describes a single case branch on a Switch node.
std::string value
The value to match (int as decimal string or raw string)
const std::string & GetDisplayName() const
Returns the display name shown in the editor.
std::string pinName
The exec-out pin name used internally (e.g. "Case_0")
std::string customLabel
User-defined display label (empty = use pinName)