少年修仙传客户端基础资源
lwb
2021-03-04 feda0784769ef000af650ba1dbbc2bc3ab8baab2
Assets/Editor/Tool/ConfigClassGenerate.cs
@@ -43,7 +43,7 @@
        }
    }
    public static void CreateConfigClass(FileInfo fileInfo)
    public static void CreateConfigClass(FileInfo fileInfo, bool isIL = false)
    {
        var lines = File.ReadAllLines(fileInfo.FullName);
        if (lines.Length > 2)
@@ -77,7 +77,7 @@
            filedContent = string.Join("\r\n\t", fieldFulls.ToArray());
            readContent = string.Join("\r\n\r\n\t\t\t", readFulls.ToArray());
            CreatNewConfigClass(fileInfo.Name.Substring(0, fileInfo.Name.IndexOf('.')));
            CreatNewConfigClass(fileInfo.Name.Substring(0, fileInfo.Name.IndexOf('.')), isIL);
        }
    }
@@ -214,6 +214,10 @@
        {
            return StringUtility.Contact("int.TryParse(tables", "[", index, "]", ",", "out ", field, ")", "; ");
        }
        else if (type.Contains("long"))
        {
            return StringUtility.Contact("long.TryParse(tables", "[", index, "]", ",", "out ", field, ")", "; ");
        }
        else if (type.Contains("float"))
        {
            return StringUtility.Contact("float.TryParse(tables", "[", index, "]", ",", "out ", field, ")", "; ");
@@ -247,15 +251,23 @@
        }
    }
    static string configClassPath = "Assets" + "/" + "Scripts/Core/GameEngine/Model/Config";
    static string configClassPath = "Assets/Scripts/Core/GameEngine/Model/Config";
    static string configILClassPath = "LogicProject/Src/Config";
    static string templatePath = "Assets/Editor/ScriptTemplate/ConfigDataTemplate.txt";
    public static void CreatNewConfigClass(string _name)
    public static void CreatNewConfigClass(string _name, bool isIL)
    {
        var newConfigPath = configClassPath + string.Format("/{0}Config.cs", _name);
        string newConfigPath;
        if (isIL)
        {
            newConfigPath = configILClassPath + string.Format("/IL{0}Config.cs", _name);
        }
        else
        {
            newConfigPath = configClassPath + string.Format("/{0}Config.cs", _name);
        }
        AssetDatabase.DeleteAsset(newConfigPath);
        UnityEngine.Object o = CreateScriptAssetFromTemplate(newConfigPath, templatePath);
        AddConfigInit(newConfigPath);
        ProjectWindowUtil.ShowCreatedAsset(o);
    }
@@ -287,7 +299,7 @@
    internal static void AddConfigInit(string pathName)
    {
        string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(pathName);
        string add1 = string.Format("{0}.Init();{1}", fileNameWithoutExtension, "\r\n\t\ttaskCount++;");
        string add1 = string.Format("{0}.Init();taskCount++;", fileNameWithoutExtension);
        string add2 = string.Format("completeCount += {0}.inited ? 1 : 0;", fileNameWithoutExtension);
        string path = Application.dataPath + "/Scripts/Utility/ConfigInitiator.cs";
@@ -297,6 +309,10 @@
        {
            text = text.Replace("//初始化结束\r\n", add1 + "\r\n" + "\t\t//初始化结束\r\n");
        }
        else
        {
            Debug.Log(fileNameWithoutExtension);
        }
        if (!text.Contains(add2))
        {