コード例 #1
0
        void UpdateBehaviorTree()
        {
            if (rootNode == null)
            {
                rootNode = GetRootNode <BehaviorTreeNode>();
            }

            if (navigator == null)
            {
                if (string.IsNullOrEmpty(navigatorPath))
                {
                    navigator = GetRootNode <INavAgent>();
                }
                else
                {
                    navigator = GetNode(navigatorPath) as INavAgent;
                }
            }

            if (rootNode != null)
            {
                rootNode.AssignChildNodes();
                AssignBehaviorTreeOnChildren(rootNode);
            }
            else
            {
                GD.Print("The Behavior Tree '" + GetName() + "' needs a root BehaviorTreeNode!");
            }
        }