1234567891011121314151617181920212223242526272829303132333435 |
- namespace Unity.VisualScripting
- {
- /// <summary>
- /// Triggers the transition in the parent state graph.
- /// </summary>
- [UnitSurtitle("State")]
- [UnitCategory("Nesting")]
- [UnitShortTitle("Trigger Transition")]
- [TypeIcon(typeof(IStateTransition))]
- public sealed class TriggerStateTransition : Unit
- {
- /// <summary>
- /// The moment at which the parent state transition should be triggered.
- /// </summary>
- [DoNotSerialize]
- [PortLabelHidden]
- public ControlInput trigger { get; private set; }
-
- protected override void Definition()
- {
- trigger = ControlInput(nameof(trigger), Trigger);
- }
-
- private ControlOutput Trigger(Flow flow)
- {
- var stateTransition = flow.stack.GetParent<INesterStateTransition>();
-
- flow.stack.ExitParentElement();
-
- stateTransition.Branch(flow);
-
- return null;
- }
- }
- }
|