예제 #1
0
 public override void defaultOnSkipped(SkipSource source)
 {
     logger.LogFormat(LogType.Log, "{0} ({1}) onSkipped src {2}", LogTag, path, source);
     base.defaultOnSkipped(source);
     _active = false;
     if (source != SkipSource.Parent)
     {
         _parent.OnChildSkipped(source);
     }
 }
예제 #2
0
 public void defaultOnChildSkipped(SkipSource source)
 {
     logger.LogFormat(LogType.Log, "{0} ({1}) onChildSkipped child {2} src {3}", LogTag, path, CurrentStateName, source);
     if (transitions.ContainsKey(CurrentStateName))
     {
         string nextStateName = transitions[CurrentStateName];
         _curStateName = nextStateName;
         states[nextStateName].OnStarted();
     }
     else
     {
         _curStateName = "";
         OnSkipped(source);
     }
 }
예제 #3
0
    public override void defaultOnSkipped(SkipSource source)
    {
        logger.LogFormat(LogType.Log, "{0} ({1}) onSkipped src {2}", LogTag, path, source);
        // skip children
        if (IsActive)
        {
            states[CurrentStateName].OnSkipped(SkipSource.Parent);
            _curStateName = "";
        }

        // self cleanup
        base.defaultOnSkipped(source);

        // call parent's skip if they didn't initiate it to avoid infinite loop
        if (HasParent && source != SkipSource.Parent)
        {
            _parent.OnChildSkipped(source);
        }
    }
예제 #4
0
 public virtual void defaultOnSkipped(SkipSource source)
 {
     logger.LogFormat(LogType.Log, "{0} ({1}) onSkipped src {2}", LogTag, path, source);
 }