Skip to main content
File: Assets/_Molca/_Core/Sequence/Step/Step.cs
Namespace: Molca.Sequence

Status

StepStatus: Inactive, Active, Completed.

Completion

IsCompleted is true only when the step is internally complete and all child steps are complete.

Identity and telemetry

Events

OnStepBegin, OnStepEnd (UnityEvent), OnStatusChanged, StartTime / EndTime.

Auxiliaries

[SerializeReference] List<StepAuxiliary> — see Core Sequence/Auxiliary/ and VR step auxiliaries.

VR subclasses

Training steps in Assets/_MolcaSDK/_VR/Scripts/Scenario/Steps/ — see the VR steps section in navigation.

Typical custom / VR step (code)

VR steps inherit Step, wire [SerializeField] for designers, subscribe in OnStepActivated, and call Complete() when the training rule is satisfied (dispatches Step.Completed / Step.FullyCompleted via EventDispatcher).
using Molca.Sequence;
using UnityEngine;

public class ExampleTrainingStep : Step
{
    [SerializeField] private float holdSeconds = 2f;
    private float _elapsed;

    protected override void OnStepActivated()
    {
        base.OnStepActivated();
        _elapsed = 0f;
    }

    public override void UpdateStep()
    {
        base.UpdateStep();
        _elapsed += Time.deltaTime;
        if (_elapsed >= holdSeconds)
            Complete();
    }
}
Concrete VR steps (grab, teleport, valve, …) follow this shape with XR-specific fields — see each feature page and the matching *.cs under _MolcaSDK/_VR/Scripts/Scenario/Steps/.

Unity Editor

Inspector: Step component with Ref Id, Step Id, auxiliaries list.

Unity Inspector showing Molca Step base fields