public BehaviourTreeAsset.BTData ExportNodeData(ICollection <BehaviourTreeAsset.BTData> collections) { BehaviourTreeAsset.BTData node = Self.NewData(); node.m_Pos = new Vector2(LocalRect.center.x, LocalRect.yMin); int[] servs = new int[services.Count]; for (int i = 0; i < servs.Length; i++) { Decorator decor = services[i]; BehaviourTreeAsset.BTData data = decor.NewData(); collections.Add(data); servs[i] = decor.BTId; } node.m_Services = servs; int[] decos = new int[conditions.Count]; for (int i = 0; i < decos.Length; i++) { Decorator decor = conditions[i]; BehaviourTreeAsset.BTData data = decor.NewData(); collections.Add(data); decos[i] = decor.BTId; } node.m_Conditions = decos; collections.Add(node); return(node); }
public BehaviourTreeAsset.BTData NewData() { BehaviourTreeAsset.BTData data = new BehaviourTreeAsset.BTData(); data.m_Id = BTId; data.m_Name = BTMeta.Name; data.m_Type = BTMeta.NodeType; data.m_NotFlag = NotFlag; JObject obj = new JObject(); for (int i = 0; i < Properties.Length; i++) { obj[Properties[i].PropertyName] = Properties[i].InputData; } data.m_JsonData = JsonConvert.SerializeObject(obj); return(data); }