Пример #1
0
        public void DeleteContext(BehaviourNode node)
        {
            if (node == null)
            {
                return;
            }
            var t = node.GetContext();

            if (t != null)
            {
                mAssetBinder.targetTree.EditorDeleteNode(t);
                if (t.Asset is BTNodeAsset)
                {
                    AddDelayTask(ACT_UPDATE_WIRES, mWires.UpdateWires);
                }
                if (node != RootNode && node.GetNode() == null)
                {
                    AIGraph.RemoveElement(node);
                }
                else
                {
                    node.Resize();
                }
            }
        }
        public override void ModifyParentAs(BehaviourNode node)
        {
            base.ModifyParentAs(node);
            var todo = BTEditableDO.New <BTModifyParent>(editor);

            todo.isParentRoot = node == editor.RootNode;
            todo.child        = mNode;
            todo.parent       = node == null ? null : node.GetNode();
            editor.DoEdit(todo);
        }
 public override bool EnableParentAs(BehaviourNode node)
 {
     if (base.EnableParentAs(node))
     {
         if (node == null || node == editor.RootNode)
         {
             return(true);
         }
         var p = node.GetNode();
         return(p != null && !p.IsChildOf(mNode));
     }
     return(false);
 }
Пример #4
0
 public void AddNewNode(AIModules.Module mod)
 {
     AddNewNode(mod, mContextNode == null ? null : mContextNode.GetNode(), mContextPos);
 }