42 lines
1.3 KiB
C#
42 lines
1.3 KiB
C#
using System;
|
||
using UnityEditor;
|
||
using UnityEngine;
|
||
using System.Collections.Generic;
|
||
|
||
|
||
public class SkillAssetFiller
|
||
{
|
||
[MenuItem("填表脚本/补全SkillDataAsset的所有Skill项目")]
|
||
public static void FillCivDataCityInfo()
|
||
{
|
||
|
||
string assetPath = "Assets/Resources/DataAssets/SkillDataAssets.asset";
|
||
var asset = AssetDatabase.LoadAssetAtPath<SkillDataAssets>(assetPath);
|
||
if (asset == null)
|
||
{
|
||
Debug.LogError("❌ 找不到 SkillDataAsset.asset,请确认路径正确!");
|
||
return;
|
||
}
|
||
int addCount = 0;
|
||
var skillSet = new HashSet<SkillType>();
|
||
|
||
foreach (var skillinfo in asset.SkillInfoList)
|
||
skillSet.Add(skillinfo.SkillType);
|
||
|
||
|
||
foreach (SkillType skill in Enum.GetValues(typeof(SkillType)))
|
||
{
|
||
if (skillSet.Contains(skill)) continue;
|
||
var t = new SkillInfo();
|
||
t.SkillType = skill;
|
||
asset.SkillInfoList.Add(t);
|
||
addCount++;
|
||
}
|
||
|
||
EditorUtility.SetDirty(asset);
|
||
AssetDatabase.SaveAssets();
|
||
AssetDatabase.Refresh();
|
||
|
||
Debug.Log($"✅ 补全完成:共添加了 {addCount} 个 SkillData下的SkillInfo 条目。");
|
||
}
|
||
} |