Interface ScriptNode
- All Known Implementing Classes:
AbsNode, AbstractScriptNode, AddNode, AndNode, AttackNode, Base64DecodeNode, Base64EncodeNode, BooleanConstantNode, BranchNode, BreakBlockNode, BSplineNode, CacheNode, CeilNode, ClampNode, CompareNode, CompressionNode, ConcatNode, CosNode, CreateVector3Node, DebounceNode, DecryptNode, DiscordWebhookNode, DistanceNode, DivideNode, EncryptNode, EndsWithNode, FilterBotsNode, FindBlockNode, FindEntityNode, FirstNode, FloorNode, ForEachBotNode, ForEachNode, FormatNode, FormulaNode, GateNode, GetArmorNode, GetAtNode, GetBiomeNode, GetBlockNode, GetBotByNameNode, GetBotInfoNode, GetBotsNode, GetBotStateNode, GetDimensionNode, GetEffectsNode, GetExperienceNode, GetGamemodeNode, GetHealthNode, GetHungerNode, GetInventoryNode, GetLightLevelNode, GetPersistentBotVariableNode, GetPositionNode, GetRotationNode, GetSelectedSlotNode, GetSessionBotVariableNode, GetTargetBlockNode, GetTimeNode, GetVelocityNode, GetWeatherNode, HashNode, IndexOfNode, IsEmptyNode, IsNullNode, JoinToStringNode, JsonArrayNode, JsonGetNode, JsonObjectNode, JsonParseNode, JsonSetNode, JsonStringifyNode, JumpNode, LastNode, LerpNode, ListContainsNode, ListLengthNode, LLMChatNode, LookAtNode, LoopNode, MaxNode, MinNode, ModuloNode, MultiplyNode, NotNode, NumberConstantNode, OnBotInitNode, OnChatNode, OnDamageNode, OnDeathNode, OnIntervalNode, OnJoinNode, OnScriptEndNode, OnScriptInitNode, OnTickNode, OrNode, PathfindToNode, PlaceBlockNode, PowNode, PrintNode, RandomNode, RangeNode, RateLimitNode, RegexMatchNode, RegexReplaceNode, ReplaceNode, RoundNode, SelectSlotNode, SendChatNode, SequenceNode, SetPersistentBotVariableNode, SetRotationNode, SetSessionBotVariableNode, SinNode, SneakNode, SplitNode, SplitVector3Node, SprintNode, SqrtNode, StartsWithNode, StateNode, StringConstantNode, StringContainsNode, StringLengthNode, SubstringNode, SubtractNode, SwitchNode, TanNode, TimestampNode, ToLowerCaseNode, ToNumberNode, ToStringNode, ToUpperCaseNode, TrimNode, UseItemNode, Vector3ConstantNode, WaitNode, WebFetchNode, XorNode
public interface ScriptNode
Base interface for all script nodes in the visual scripting system. Each node type implements this interface to define its execution behavior.
Nodes are functional and pure - they receive inputs and produce outputs. They have access to a minimal runtime API (instance, scheduler, pending ops) but not to execution machinery like output storage or cancellation state.
Metadata (type, ports, category, etc.) is stored in the NodeRegistry, not on the node instance itself.
-
Method Summary
Modifier and TypeMethodDescriptionexecuteReactive(NodeRuntime runtime, Map<String, NodeValue> inputs) Executes this node reactively with the given runtime and inputs.
-
Method Details
-
executeReactive
reactor.core.publisher.Mono<Map<String, NodeValue>> executeReactive(NodeRuntime runtime, Map<String, NodeValue> inputs) Executes this node reactively with the given runtime and inputs.- Parameters:
runtime- the node runtime providing access to instance and schedulerinputs- the resolved input values from connected nodes or default values- Returns:
- a Mono that completes with the node's output values
-