Пример #1
0
    public void AddSubLoopFlow(LoopFlow loopFlow)
    {
        if (loopFlow.activated)
        {
            loopFlow.Terminate();
        }

        _subLoopFlows.Add(loopFlow);

        loopFlow._owner = this;
        loopFlow.OnActivate();

        Debug.Log(string.Concat(this, "\n> ", loopFlow));
    }
Пример #2
0
    public virtual void SwitchLoopFlow(LoopFlow newLoopFlow)
    {
        if (newLoopFlow == null || _currentLoopFlow == newLoopFlow)
        {
            return;
        }

        if (_currentLoopFlow != null)
        {
            _currentLoopFlow.Terminate();
        }

        _currentLoopFlow = newLoopFlow;
        AddSubLoopFlow(_currentLoopFlow);

        _transiting = false;
    }