Table of Contents

Namespace LunyScript.Blocks

Classes

ComputedVariableBlock

Abstract base for variable blocks that compute their value on-the-fly from runtime context rather than reading from a Table entry. TargetHandle is permanently null, so Set/Add/etc. will throw LunyScriptVariableException ("Cannot modify read-only variable").

ConstantVariableBlock

Block that returns a constant variable value.

ControlFlow
IfBlock

Builder for constructing 'If' blocks with 'ElseIf' and 'Else' branches.

ScriptActionBlock

Abstract base for action blocks that perform an action that may alter game state.

ScriptBlock

Abstract base for all LunyScript blocks.

ScriptConditionBlock

Abstract base for condition blocks that evaluate to a boolean result.

SequenceBlock

Abstract base for sequence blocks that contain child action blocks.

TableVariableBlock

Block that holds a reference to a script variable.

TransformInterpolateBlock

Abstract base for blocks that interpolate or step a transform property toward a target over time. Holds the shared optional parameters: speed, deadZone, axisLock, responsiveness.

TransformInterpolateTowardsObjectBlock

Abstract base for Towards blocks whose target is an ILunyObject in the scene (Move and Rotate towards).

TransformInterpolateTowardsVariableBlock

Abstract base for Towards blocks whose target is a VariableBlock value (Scale towards).

TransformPositionLerpTowardsObjectBlock
TransformPositionLinearTowardsObjectBlock
TransformPositionMoveByBlock
TransformPositionMoveRelativeBlock
TransformPositionSetLocalBlock
TransformPositionSetWorldBlock
TransformRotationLerpTowardsObjectBlock
TransformRotationLinearTowardsObjectBlock
TransformRotationLookAtBlock
TransformRotationSetLocalBlock
TransformRotationSetWorldBlock
TransformScaleSetLocalBlock
TransformScaleTowardsBlock
TransformScaleTowardsLerpBlock
VarAccessor

Provides indexed access to script variables. Getter returns a VariableBlock for use in script expressions and conditions. Setter performs immediate variable assignment during Build().

VariableBlock

Abstract base for variable blocks that evaluate to a runtime Variable. Extends ScriptConditionBlock because variables are implicitly usable as conditions (via AsBoolean conversion).

VariableBlock<T>

Abstract base for blocks that evaluate to a typed struct value. Separate from the scalar VariableBlock hierarchy; does not participate in arithmetic, comparison, or boolean condition operators.

Interfaces

ICoroutineBlock

Represents a coroutine block that runs perpetually (indefinitely). Coroutines can be started, stopped, paused, resumed.

ICounterCoroutineBlock

Represents a coroutine counter block. Counters elapse after a specific number of frames/heartbeats have passed.

IScriptBlock

Base interface for LunyScript blocks.

ISequenceBlock
ITimerCoroutineBlock

Represents a coroutine timer block. Timers fire after a duration elapses.