internal static HierarchySettings GetAssets() { if (instance != null) { return(instance); } var guids = AssetDatabase.FindAssets(string.Format("t:{0}", typeof(HierarchySettings).Name)); for (int i = 0; i < guids.Length; i++) { instance = AssetDatabase.LoadAssetAtPath <HierarchySettings>(AssetDatabase.GUIDToAssetPath(guids[i])); if (instance != null) { return(instance); } } // Settings file doesn't exist, create one const string settingsSavePath = "Assets/Hierarchy 2/Editor/Settings.asset"; Directory.CreateDirectory(Path.GetDirectoryName(settingsSavePath)); AssetDatabase.CreateAsset(CreateInstance <HierarchySettings>(), settingsSavePath); AssetDatabase.SaveAssets(); instance = AssetDatabase.LoadAssetAtPath <HierarchySettings>(settingsSavePath); Debug.Log("Created Hierarchy 2 settings file at " + settingsSavePath + ". You can move this file around freely.", instance); return(instance); }
internal static HierarchySettings CreateAssets() { String path = EditorUtility.SaveFilePanelInProject("Save as...", "Settings", "asset", ""); if (path.Length > 0) { HierarchySettings settings = ScriptableObject.CreateInstance <HierarchySettings>(); AssetDatabase.CreateAsset(settings, path); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); EditorUtility.FocusProjectWindow(); Selection.activeObject = settings; return(settings); } return(null); }
internal static HierarchySettings GetAssets() { if (instance != null) { return(instance); } var guids = AssetDatabase.FindAssets(string.Format("t:{0}", typeof(HierarchySettings).Name)); for (int i = 0; i < guids.Length; i++) { instance = AssetDatabase.LoadAssetAtPath <HierarchySettings>(AssetDatabase.GUIDToAssetPath(guids[i])); if (instance != null) { return(instance); } } return(instance = CreateAssets()); }
void OnEnable() => settings = target as HierarchySettings;