Exemple #1
0
    protected override void OnUpdate()
    {
        base.OnUpdate();

        m_schedulable.ProcessSchedule(Time.deltaTime);
        m_systems.Execute();

        SystemStateTransitionEvent e = null;

        if (ProcedureStateMachine != null)
        {
            e = EventRoute.TakeEvent <SystemStateTransitionEvent>();
        }

        EventRoute.ClearOutOfDateEvents();

        if (e != null)
        {
            ProcedureStateMachine.FireEvent(e.transition, e.eventArg);
        }
        ProcedureStateMachine?.Update();
    }
    protected override void OnUpdate()
    {
        base.OnUpdate();

        m_systems.Execute();

        m_systems.Cleanup();

        SystemStateTransitionEvent e = null;

        if (m_procedureStateMachine != null)
        {
            e = EventRoute.TakeEvent <SystemStateTransitionEvent>();
        }

        m_procedureStateMachine?.Update();

        EventRoute.ClearOutOfDateEvents();

        if (e != null)
        {
            m_procedureStateMachine.FireEvent(e.transition, e.eventArg);
        }
    }