/*******************************************************************************
* 版本声明:v1.0.0
* 类 名 称:EditorScriptsConfig
* 创建日期:2020-04-13 14:52:46
* 作者名称:Kimch
* 功能描述:脚本模板-配置
******************************************************************************/
using System.IO;
using UnityEditor;
using UnityEngine;
namespace KF.ScriptHelper
{
///
/// 脚本模板
///
class EditorScriptsConfig : ScriptableObject
{
///
/// 作者
///
[Header("作者")]
public string author = "Author";
///
/// 命名空间
///
[Header("名称空间")]
public string nameSpace = "NameSpace.Author";
///
///
///
[Header("公司名称")]
public string company = "DefaultCompany";
///
/// 模板路径
///
[Header("模板路径")]
public string templatePath = "Assets/AFramework/Editor/Templates/";
private const string EditorScriptsConfigFile = "EditorScriptsConfigFile.asset";
private static string _EditorScriptsConfigCsPath;
public static string EditorScriptsConfigCsPath
{
get
{
if (!string.IsNullOrEmpty(_EditorScriptsConfigCsPath))
{
return _EditorScriptsConfigCsPath;
}
var result = Directory.GetFiles("Assets/AFramework/Editor/Scripts/", "EditorScriptsConfig.cs", SearchOption.AllDirectories);
if (result.Length >= 1)
{
_EditorScriptsConfigCsPath = Path.GetDirectoryName(result[0]);
_EditorScriptsConfigCsPath = _EditorScriptsConfigCsPath.Replace('\\', '/');
_EditorScriptsConfigCsPath = _EditorScriptsConfigCsPath.Replace("/Scripts", "");
_EditorScriptsConfigCsPath = _EditorScriptsConfigCsPath + "/" + EditorScriptsConfigFile;
}
return _EditorScriptsConfigCsPath;
}
}
private static EditorScriptsConfig _Instance;
public static EditorScriptsConfig Instance
{
get
{
if (_Instance)
{
return _Instance;
}
_Instance = AssetDatabase.LoadAssetAtPath(EditorScriptsConfigCsPath);
if (_Instance == null)
{
_Instance = CreateInstance();
AssetDatabase.CreateAsset(_Instance, EditorScriptsConfigCsPath);
}
return _Instance;
}
}
}
}