Unity graph tool solution based on different implementation now focused on Unity.Experimental.Graphview
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.2 KiB

3 years ago
using System;
using System.Collections.Generic;
using UnityEngine;
using Newtonsoft.Json;
using TNode.JsonSerialize;
using UnityEngine.Serialization;
3 years ago
3 years ago
namespace TNode.Models{
3 years ago
[Serializable]
public class GraphData:ScriptableObject,ISerializationCallbackReceiver{
[SerializeField]
public Dictionary<string,NodeData> NodeDictionary = new Dictionary<string,NodeData>();
public List<NodeLink> nodeLinks = new List<NodeLink>();
[HideInInspector]
[SerializeField]
//[HideInInspector]
private string jsonObject;
public void OnBeforeSerialize(){
var serializedData = JsonConvert.SerializeObject(NodeDictionary,JsonSerializeTool.JsonSerializerSettings);
jsonObject = serializedData;
}
public void OnAfterDeserialize(){
var deserializedData = JsonConvert.DeserializeObject<Dictionary<string,NodeData>>(jsonObject,JsonSerializeTool.JsonSerializerSettings);
var deserializedData2 = JsonUtility.FromJson<Dictionary<string,NodeData>>(jsonObject);
NodeDictionary = deserializedData;
Debug.Log("hi");
}
3 years ago
}
}