Beispiel #1
0
        private void CreateScript()
        {
            TargetDir = TargetDir.EnsureDirEnd();

            var appender           = new StringAppender();
            var successfulSettings = new List <YuScriptCreateSetting>();

            foreach (var setting in ScriptCreateSettings)
            {
                if (string.IsNullOrEmpty(setting.ScriptId))
                {
                    //YuEditorAPIInvoker.DisplayTip("脚本名不能为空!");
                    return;
                }

                var scriptPath = TargetDir + setting.ScriptId + ".cs";
                if (File.Exists(scriptPath))
                {
                    Debug.Log($"目标脚本{scriptPath}已存在,创建取消!");
                    continue;
                }

                AppendNoteHead(appender, setting);
                AppendBody(appender, setting);


                var content = appender.ToString();
                IOUtility.WriteAllText(scriptPath, content);
                appender.Clean();
                successfulSettings.Add(setting);
            }

            foreach (var setting in successfulSettings)
            {
                ScriptCreateSettings.Remove(setting);
            }

            AssetDatabase.Refresh();
        }