Ejemplo n.º 1
0
        public static NodeProto ConfigToNode(BehaviorNodeConfig nodeProto)
        {
            NodeProto nodeData = new NodeProto();

            nodeData.nodeId    = nodeProto.id;
            nodeData.name      = ((UnityEngine.Object)nodeProto).name;
            nodeData.describe  = nodeProto.describe;
            nodeData.args_dict = nodeProto.GetArgsDict();
            nodeData.children  = new List <NodeProto>();
            foreach (Transform child in nodeProto.gameObject.transform)
            {
                BehaviorNodeConfig nodeConfig = child.gameObject.GetComponent <BehaviorNodeConfig>();
                NodeProto          childData  = ConfigToNode(nodeConfig);
                nodeData.children.Add(childData);
            }
            return(nodeData);
        }
Ejemplo n.º 2
0
        private static NodeProto BehaviorNodeConfigToNodeProto(BehaviorNodeConfig behaviorNodeConfig)
        {
            NodeProto nodeProto = new NodeProto
            {
                Id       = behaviorNodeConfig.id,
                Name     = behaviorNodeConfig.name,
                Desc     = behaviorNodeConfig.describe,
                Args     = behaviorNodeConfig.GetArgsDict(),
                children = new List <NodeProto>()
            };

            foreach (Transform child in behaviorNodeConfig.gameObject.transform)
            {
                BehaviorNodeConfig nodeConfig = child.gameObject.GetComponent <BehaviorNodeConfig>();
                NodeProto          childData  = BehaviorNodeConfigToNodeProto(nodeConfig);
                nodeProto.children.Add(childData);
            }
            return(nodeProto);
        }