BAD.TimeLimit.NodeTask C# (CSharp) Method

NodeTask() public method

public NodeTask ( ) : IEnumerator
return IEnumerator
        public override IEnumerator<NodeResult> NodeTask()
        {
            if (ChildIsMissing ()) {
                yield return NodeResult.Failure;
                yield break;
            }
            var start = Time.time;
            var task = children [0].GetNodeTask ();
            while (task.MoveNext ()) {
                var t = task.Current;
                if ((Time.time - start) > seconds) {
                    children [0].Abort ();
                    yield return NodeResult.Failure;
                    break;
                }
                if (t == NodeResult.Continue) {
                    yield return NodeResult.Continue;
                } else {
                    if (t == NodeResult.Failure) {
                        yield return NodeResult.Failure;
                        break;
                    }
                    if (t == NodeResult.Success) {
                        yield return NodeResult.Success;
                        break;
                    }
                }
            }
        }