| using System.Collections; | 
| using System.Collections.Generic; | 
| using UnityEngine; | 
| using UnityEditor; | 
| using System.IO; | 
| using System.Text; | 
|   | 
| public class AssetsPostProcessor : AssetPostprocessor | 
| { | 
|   | 
|     static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) | 
|     { | 
|         foreach (string str in importedAssets) | 
|         { | 
|             OnAssetImported(str); | 
|         } | 
|         foreach (string str in deletedAssets) | 
|         { | 
|         } | 
|   | 
|         for (int i = 0; i < movedAssets.Length; i++) | 
|         { | 
|         } | 
|     } | 
|   | 
|     static void OnAssetImported(string assetPath) | 
|     { | 
|         switch (assetPath) | 
|         { | 
|             case "Assets/ResourcesOut/Refdata/Config/Item.txt": | 
|                 CreateGemItemConfig(); | 
|                 CreateEquipSuitNameConfig(); | 
|                 break; | 
|             case "Assets/ResourcesOut/Refdata/Config/Skill.txt": | 
|                 CreateSkillClassifingConfig(); | 
|                 break; | 
|         } | 
|     } | 
|   | 
|     static void CreateGemItemConfig() | 
|     { | 
|         var gemItemConfigPath = Application.dataPath + "/ResourcesOut/Refdata/Config/GemItem.txt"; | 
|         var lines = new List<string>(); | 
|         lines.Add("int\tint"); | 
|         lines.Add("ID\tType"); | 
|         lines.Add("唯一标识\t类型"); | 
|         ItemConfig.Init(true); | 
|         var keys = ItemConfig.GetKeys(); | 
|         foreach (var key in keys) | 
|         { | 
|             var config = ItemConfig.Get(key); | 
|             if ((config.Type == 25 || config.Type == 140) && config.Effect1 == 225) | 
|             { | 
|                 lines.Add(StringUtility.Contact(config.ID, '\t', config.Type)); | 
|             } | 
|         } | 
|   | 
|         if (File.Exists(gemItemConfigPath)) | 
|         { | 
|             File.Delete(gemItemConfigPath); | 
|         } | 
|         File.WriteAllLines(gemItemConfigPath, lines.ToArray(), Encoding.UTF8); | 
|     } | 
|   | 
|     static void CreateSkillClassifingConfig() | 
|     { | 
|         var skillClassifingConfigPath = Application.dataPath + "/ResourcesOut/Refdata/Config/SkillClassifing.txt"; | 
|         var lines = new List<string>(); | 
|         lines.Add("int\tint\tint\tint\tint"); | 
|         lines.Add("SkillID\tSkillTypeID\tUseType\tFuncType\tSkillLV"); | 
|         lines.Add("唯一标识\t技能类型\t使用类型\t功能类型\t技能等级"); | 
|         SkillConfig.Init(true); | 
|         var keys = SkillConfig.GetKeys(); | 
|         foreach (var key in keys) | 
|         { | 
|             var config = SkillConfig.Get(key); | 
|             lines.Add(StringUtility.Contact(config.SkillID, '\t', config.SkillTypeID, '\t', config.UseType, '\t', config.FuncType, '\t', config.SkillLV)); | 
|         } | 
|   | 
|         if (File.Exists(skillClassifingConfigPath)) | 
|         { | 
|             File.Delete(skillClassifingConfigPath); | 
|         } | 
|   | 
|         File.WriteAllLines(skillClassifingConfigPath, lines.ToArray(), Encoding.UTF8); | 
|     } | 
|   | 
|     static void CreateEquipSuitNameConfig() | 
|     { | 
|         var filePath = Application.dataPath + "/ResourcesOut/Refdata/Config/EquipSuitName.txt"; | 
|         var lines = new List<string>(); | 
|         lines.Add("int\tint\tint\tint\tstring"); | 
|         lines.Add("id\tjob\tlevel\tplace\tname"); | 
|         lines.Add("唯一标识\t职业\t阶级\t部位\t名字"); | 
|         ItemConfig.Init(true); | 
|         var keys = ItemConfig.GetKeys(); | 
|         foreach (var key in keys) | 
|         { | 
|             var config = ItemConfig.Get(key); | 
|             if (config.SuiteiD > 0) | 
|             { | 
|                 lines.Add(StringUtility.Contact(config.ID, '\t', config.JobLimit, "\t", config.LV, '\t', config.EquipPlace, '\t', config.ItemName)); | 
|             } | 
|         } | 
|   | 
|         if (File.Exists(filePath)) | 
|         { | 
|             File.Delete(filePath); | 
|         } | 
|   | 
|         File.WriteAllLines(filePath, lines.ToArray(), Encoding.UTF8); | 
|     } | 
|   | 
| } |