summaryrefslogtreecommitdiff
path: root/WorldlineKeepers/Assets/Editor
diff options
context:
space:
mode:
Diffstat (limited to 'WorldlineKeepers/Assets/Editor')
-rw-r--r--WorldlineKeepers/Assets/Editor/GenerateFileKey.cs51
-rw-r--r--WorldlineKeepers/Assets/Editor/GenerateFileKey.cs.meta11
2 files changed, 62 insertions, 0 deletions
diff --git a/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs b/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs
new file mode 100644
index 0000000..bec1374
--- /dev/null
+++ b/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs
@@ -0,0 +1,51 @@
+using System.IO;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEditor;
+using WK.Data;
+
+namespace WK
+{
+
+ public class GenerateFileKey
+ {
+ private static string targetFile = "Assets/Scripts/Data/Metadata/FileKey.cs";
+
+ [MenuItem("Tools/生成FileKey.cs")]
+ public static void EditorGenerateFileKey()
+ {
+ TextAsset text = ResourceManager.Instance.LoadAsset<TextAsset>(StaticDefine.FileList);
+ string content = text.text;
+ List<FileDescriptor> files = CSVReader.Read<FileDescriptor>(content);
+ Dictionary<string/*EFileKey*/, FileDescriptor> filelist = new Dictionary<string, FileDescriptor>();
+ CSVReader.ReadDictionary<string, FileDescriptor>(filelist, content, "key");
+ if(filelist.Count > 0)
+ {
+ if (File.Exists(targetFile))
+ {
+ File.Delete(targetFile);
+ }
+ FileStream fs = File.Create(targetFile);
+ using (StreamWriter writer = new StreamWriter(fs))
+ {
+ writer.WriteLine("// 自动生成");
+ writer.WriteLine("namespace WK.Data");
+ writer.WriteLine("{");
+ writer.WriteLine("\tpublic enum EFileKey");
+ writer.WriteLine("\t{");
+ writer.WriteLine("\t\tnone = 0,\n");
+ foreach(var kv in filelist)
+ {
+ writer.WriteLine("\t\t" + kv.Key + ",");
+ }
+ writer.WriteLine("\n\t\tall");
+ writer.WriteLine("\t}");
+ writer.WriteLine("}");
+ }
+ }
+ }
+
+ }
+
+}
diff --git a/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs.meta b/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs.meta
new file mode 100644
index 0000000..180fc9d
--- /dev/null
+++ b/WorldlineKeepers/Assets/Editor/GenerateFileKey.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6ed96edb19890924a93d28a72ab8a7c3
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: