예제 #1
0
        /// <summary>
        /// Creates the instance and saves it as asset.
        /// </summary>
        /// <returns></returns>
        public static T createSingletonInstance()
        {
#if UNITY_EDITOR
            if (instance != null || IsAvailable)
            {
                return(default(T));
            }

            T asset = CreateInstance <T>();

            string path = RuntimeUtils.inEditorSelectedProjectWindowPath();

            string assetPathAndName = AssetDatabase.GenerateUniqueAssetPath(path + "/" + typeof(T).Name + ".asset");

            AssetDatabase.CreateAsset(asset, assetPathAndName);
            AssetDatabase.SaveAssets();
            EditorUtility.FocusProjectWindow();
            Selection.activeObject = asset;

            return(asset);
#else
            return(default(T));
#endif
        }
예제 #2
0
 /// <summary>
 /// returns the current path of a selected project folder or "Assets"
 /// </summary>
 /// <returns></returns>
 public static string selectedProjectWindowPath()
 {
     return(RuntimeUtils.inEditorSelectedProjectWindowPath());
 }