public void Set(BuildTargetGroup g, object value) { if (value == null) { Remove(g); return; } bool defaultNeedsUpdate = false; if (m_className != value.GetType().AssemblyQualifiedName) { m_values.Clear(); m_className = value.GetType().AssemblyQualifiedName; defaultNeedsUpdate = true; } int i = m_values.FindIndex(v => v.targetGroup == g); var json = CustomScriptUtility.EncodeString(JsonUtility.ToJson(value)); if (i >= 0) { m_values [i].value = json; m_values [i].instance = value; } else { m_values.Add(new Entry(g, json, value)); if (defaultNeedsUpdate && g != BuildTargetUtility.DefaultTarget) { m_values.Add(new Entry(BuildTargetUtility.DefaultTarget, json, value)); } } }
public SerializedInstance(T obj) { UnityEngine.Assertions.Assert.IsNotNull(obj); m_className = obj.GetType().AssemblyQualifiedName; m_instanceData = CustomScriptUtility.EncodeString(JsonUtility.ToJson(obj)); }
public void Save() { if (m_component != null) { m_componentData = CustomScriptUtility.EncodeString(EditorJsonUtility.ToJson(m_component)); } }
public void Save() { if (m_object != null) { m_className = m_object.GetType().AssemblyQualifiedName; m_instanceData = CustomScriptUtility.EncodeString(JsonUtility.ToJson(m_object)); } }
public SerializableMultiTargetInstance(string assemblyQualifiedName, SerializableMultiTargetString instanceData) { m_className = assemblyQualifiedName; m_values = new List <Entry>(instanceData.Values.Count); foreach (var v in instanceData.Values) { m_values.Add(new Entry(v.targetGroup, CustomScriptUtility.EncodeString(v.value), null)); } }
public void Save() { if (m_gameObject != null) { m_instanceData = CustomScriptUtility.EncodeString(EditorJsonUtility.ToJson(m_gameObject)); } foreach (var info in m_attachedComponents) { info.Save(); } }