BAD.Root.NodeTask C# (CSharp) Méthode

NodeTask() public méthode

public NodeTask ( ) : IEnumerator
Résultat IEnumerator
        public override IEnumerator<NodeResult> NodeTask()
        {
            var children = this.children.ToArray ();

            while (true) {
                var childrenExist = false;
                for (var i=0; i<children.Length; i++) {
                    var child = children [i];
                    if(!child.enabled) continue;
                    childrenExist = true;
                    var task = child.GetNodeTask ();
                    while(task.MoveNext ()) {
                        if(task.Current == NodeResult.Continue)
                            yield return NodeResult.Continue;
                        else
                            break;
                    }
                }
                if(!childrenExist)
                    yield return NodeResult.Continue;
            }
        }