Context

The context subsystem binds an Interaction to its triggers and conditions. Each InteractionContext is a single entry in an InteractionTable, representing one "row" of: when (triggers), if (conditions), and what (interaction).

Architecture

spinner

Data Flow

spinner

Key Concepts

Concept
Description

Trigger matching

CanBeTriggeredWith() uses triggers.Any() — at least one trigger must match (logical OR)

Condition evaluation

IsAvailableInContext() uses conditions.All() — every condition must pass (logical AND)

Scoped context

Execute() uses IDisposable / using to automatically clean up interactor/interactable refs

Runtime modification

Triggers and conditions can be added/removed at runtime via Add/Remove methods

Classes

Class
Description

Binds an interaction to triggers and conditions; manages execution lifecycle

See Also

Last updated