public long GetOrAdd(UnityEngine.Object obj) { var id = Get(obj); // Only add items to global references when it's not playing. if (!Application.isPlaying && id == -1 && UnityEditor.AssetDatabase.Contains(obj) && ES3ReferenceMgr.CanBeSaved(obj)) { id = ES3ReferenceMgrBase.GetNewRefID(); refId.Add(obj, id); UnityEditor.EditorUtility.SetDirty(this); } return(id); }
public long GetOrAdd(UnityEngine.Object obj) { if (Application.isPlaying) { ES3Debug.LogError("GetOrAdd can only be called in the Editor, not during runtime"); return(-1); } var id = Get(obj); if (id == -1 && UnityEditor.AssetDatabase.Contains(obj) && ES3ReferenceMgr.CanBeSaved(obj)) { id = ES3ReferenceMgrBase.GetNewRefID(); refId.Add(obj, id); UnityEditor.EditorUtility.SetDirty(this); } return(id); }
public static long GetNewRefID() { return(ES3ReferenceMgrBase.GetNewRefID()); }