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);
|
}
|
|
}
|