private void Update() { //根节点不做强制设置名字 if (transform.parent == null) { return; } if (!string.IsNullOrEmpty(memo)) { gameObject.name = memo; return; } if (string.IsNullOrEmpty(className)) { return; } var dictAllTaskClass = XBTUtilities.GetAllTaskClassDictEditor(); if (!dictAllTaskClass.ContainsKey(className)) { gameObject.name = $"{className} is not exist"; return; } var data = dictAllTaskClass[className]; if (string.IsNullOrEmpty(data.Item2)) { gameObject.name = data.Item1; } else { gameObject.name = data.Item2; } }
static void GenerateTaskClassData() { XUtilities.MakePathExist(TaskClassPath); var contents = string.Empty; var result = XBTUtilities.GetAllTaskClass(); //contents += "\n"; contents += "using System;\n"; contents += "using System.Collections.Generic;\n"; contents += "using XGameKit.Core;\n"; contents += "\n"; contents += "public static class AutoClass_TaskClassReflect\n"; contents += "{\n"; contents += "\tpublic static Dictionary<string, Func<object>> datas = new Dictionary<string, Func<object>>()\n"; contents += "\t{\n"; foreach (var data in result) { contents += $"\t\t{{\"{data.Item1}\", () => {{ return XObjectPool.Alloc<{data.Item3.FullName}>();}}}},\n"; } contents += "\t};\n"; contents += "}\n"; File.WriteAllText(TaskClassPath, contents); AssetDatabase.Refresh(); }