public void Save(List <NodeDataBase> datas) { serializableNodeData = new NodeSerializableData(); foreach (var e in datas) { if (e is NodeFuncData) { serializableNodeData.nodeFuncDatas.Add(e as NodeFuncData); } else if (e is NodeData) { serializableNodeData.nodeDatas.Add(e as NodeData); } else if (e is NodePointData) { serializableNodeData.nodePointDatas.Add(e as NodePointData); } else if (e is NodeConnectionData) { serializableNodeData.nodeConnectionDatas.Add(e as NodeConnectionData); } } dataJson = JsonUtility.ToJson(serializableNodeData); }
private void LoadData() { AllClear(); NodeSerializableData datas = owner.Load(); if (datas == null || datas.nodeDatas == null) { return; } foreach (var node in datas.nodeDatas) { NodeGUIUtility.AddInstance(node); CreateNodeInLoad(node); } foreach (var node in datas.nodeFuncDatas) { NodeGUIUtility.AddInstance(node); CreateNodeInLoad(node); } foreach (var point in datas.nodePointDatas) { NodeGUIUtility.AddInstance(point); CreateNodePointInLoad(point); } foreach (var connect in datas.nodeConnectionDatas) { NodeGUIUtility.AddInstance(connect); CreateConnectionInLoad(connect); } }
public NodeSerializableData Load() { //if (dataJson.Count == 0) // return new NodeSerializableData(); serializableNodeData = JsonUtility.FromJson <NodeSerializableData>(dataJson); return(serializableNodeData); }