Пример #1
0
        public Queue <AIAction> GetActionPlan()
        {
            Queue <AIAction> queue = new Queue <AIAction>();

            while (currentNode.GetAction() != null)
            {
                queue.Enqueue(currentNode.GetAction());
                currentNode = currentNode.GetParent();
            }

            Queue <AIAction> actionPlan = new Queue <AIAction>();

            while (queue.Count > 0)
            {
                actionPlan.Enqueue(queue.Dequeue());
            }

            return(actionPlan);
        }
Пример #2
0
        public Queue <IAIAction <L, V> > GetActionPlan()
        {
            var queue = new Queue <IAIAction <L, V> >();

            while (currentNode.GetAction() != null)
            {
                queue.Enqueue(currentNode.GetAction());
                currentNode = currentNode.GetParent();
            }

            var actionPlan = new Queue <IAIAction <L, V> >();

            while (queue.Count > 0)
            {
                actionPlan.Enqueue(queue.Dequeue());
            }

            return(actionPlan);
        }