A game about forced loneliness, made by TACStudios
at master 994 B view raw
1using System; 2using UnityEngine; 3 4namespace UnityEditor.ShaderGraph 5{ 6 [Serializable] 7 class SerializableGuid : ISerializationCallbackReceiver 8 { 9 public SerializableGuid() 10 { 11 m_Guid = Guid.NewGuid(); 12 } 13 14 public SerializableGuid(Guid guid) 15 { 16 m_Guid = guid; 17 } 18 19 [NonSerialized] 20 private Guid m_Guid; 21 22 [SerializeField] 23 private string m_GuidSerialized; 24 25 public Guid guid 26 { 27 get { return m_Guid; } 28 internal set { m_Guid = value; } // allow id to be overwritten when necessary 29 } 30 31 public virtual void OnBeforeSerialize() 32 { 33 m_GuidSerialized = m_Guid.ToString(); 34 } 35 36 public virtual void OnAfterDeserialize() 37 { 38 if (!string.IsNullOrEmpty(m_GuidSerialized)) 39 m_Guid = new Guid(m_GuidSerialized); 40 else 41 m_Guid = Guid.NewGuid(); 42 } 43 } 44}