Пример #1
0
    public void AddNodeType(NODE_TYPE nodeType)
    {
        Node_Draw_Info_Item item = new Node_Draw_Info_Item(nodeType);

        item.GetTypeName();
        string name = string.Format("{0}/{1}", _nodeTypeName, item._nodeName);
        KeyValuePair <string, Node_Draw_Info_Item> kv = new KeyValuePair <string, Node_Draw_Info_Item>(name, item);

        _nodeArr.Add(kv);
    }
Пример #2
0
    public void AddNodeType(NODE_TYPE nodeType, string nodeName, int identification)
    {
        Node_Draw_Info_Item item = new Node_Draw_Info_Item(nodeType);

        item.SetName(nodeName);
        item.SetIdentification(identification);
        string name = string.Format("{0}/{1}", _nodeTypeName, nodeName);
        KeyValuePair <string, Node_Draw_Info_Item> kv = new KeyValuePair <string, Node_Draw_Info_Item>(name, item);

        _nodeArr.Add(kv);
    }
Пример #3
0
    // 添加节点
    private void AddNode(Node_Draw_Info_Item info, Vector3 mousePosition, int openSubTreeId)
    {
        NodeValue newNodeValue = new NodeValue();

        newNodeValue.id = GetNewNodeId();
        if (_behaviorTreeData.rootNodeId < 0)
        {
            _behaviorTreeData.rootNodeId = newNodeValue.id;
            newNodeValue.isRootNode      = true;
        }

        newNodeValue.nodeName           = info._nodeName;
        newNodeValue.identificationName = info._identificationName;
        newNodeValue.NodeType           = (int)info._nodeType;
        newNodeValue.parentNodeID       = -1;
        newNodeValue.function           = NodeDescript.GetFunction((NODE_TYPE)info._nodeType);

        RectT rectT = new RectT();
        Rect  rect  = new Rect(mousePosition.x, mousePosition.y, rectT.width, rectT.height);

        newNodeValue.position = RectTool.RectToRectT(rect);

        newNodeValue.parentSubTreeNodeId = openSubTreeId;

        NodeList.Add(newNodeValue);

        if (openSubTreeId >= 0)
        {
            bool hasEntryNode = false;
            for (int i = 0; i < NodeList.Count; ++i)
            {
                if (NodeList[i].parentSubTreeNodeId == openSubTreeId &&
                    (NodeList[i].subTreeEntry))
                {
                    hasEntryNode = true;
                    break;
                }
            }
            if (!hasEntryNode)
            {
                ChangeSubTreeEntryNode(newNodeValue.parentSubTreeNodeId, newNodeValue.id);
            }
        }
    }
Пример #4
0
    // 添加节点
    private void AddNode(Node_Draw_Info_Item info, Vector3 mousePosition)
    {
        NodeValue newNodeValue = new NodeValue();

        newNodeValue.id = GetNewNodeId();
        if (_behaviorTreeData.rootNodeId < 0)
        {
            _behaviorTreeData.rootNodeId = newNodeValue.id;
            newNodeValue.isRootNode      = true;
        }

        newNodeValue.nodeName       = info._nodeName;
        newNodeValue.identification = info._identification;
        newNodeValue.NodeType       = (int)info._nodeType;
        newNodeValue.parentNodeID   = -1;

        Rect rect = new Rect(mousePosition.x, mousePosition.y, 100, 100);

        newNodeValue.position = RectTool.RectToRectT(rect);

        NodeList.Add(newNodeValue);
    }
Пример #5
0
 // 添加节点
 private void AddNode(Node_Draw_Info_Item info, Vector3 mousePosition, int subMachineId)
 {
     AddNode(info._nodeName, (IDENTIFICATION)info._identification, info._nodeType, mousePosition, subMachineId);
 }