/// <summary> /// Initialize FSM on awake so it doesn't cause hitches later /// </summary> public override void Awake() { if (array != null && fsmTemplateControl.fsmTemplate != null && Application.isPlaying) { runFsm = Fsm.CreateSubFsm(fsmTemplateControl); } }
/// <summary> /// Start the FSM on entering the state /// </summary> public override void OnEnter() { fsmTemplateControl.fsmTemplate = (FsmTemplate)template.Value; if (fsmTemplateControl.fsmTemplate != null) { runFsm = Fsm.CreateSubFsm(fsmTemplateControl); } if (runFsm == null) { Finish(); return; } runFsm.OnEnable(); if (!runFsm.Started) { runFsm.Start(); } storeID.Value = fsmTemplateControl.ID; CheckIfFinished(); }
/// <summary> /// Initialize FSM on awake so it doesn't cause hitches later /// </summary> public override void Awake() { HandlesOnEvent = true; fsmTemplateControl.Init(); if (fsmTemplateControl.fsmTemplate != null && Application.isPlaying) { runFsm = Fsm.CreateSubFsm(fsmTemplateControl); } }