(client) feat:添加定义的类型名称链接索引
This commit is contained in:
@ -21,8 +21,39 @@ namespace Managers
|
||||
var pack = new DefinePack();
|
||||
if (pack.LoadPack(folder)) packs.Add(pack.packID, pack);
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var pack in packs)
|
||||
{
|
||||
foreach (var define in pack.Value.defines)
|
||||
{
|
||||
var typeName=define.Key;
|
||||
var defList=define.Value;
|
||||
if (!defines.ContainsKey(typeName))
|
||||
defines[typeName] = new Dictionary<string, Define>();
|
||||
foreach (var def in defList)
|
||||
{
|
||||
defines[typeName][def.defName] = def;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 查找指定定义类型的定义名对应的 Define 对象。
|
||||
/// </summary>
|
||||
/// <param name="defineType">定义类型</param>
|
||||
/// <param name="defineName">定义名</param>
|
||||
/// <returns>如果找到,返回 Define 对象;否则返回 null。</returns>
|
||||
public Define FindDefine(string defineType, string defineName)
|
||||
{
|
||||
if (defines.TryGetValue(defineType, out var typeDict))
|
||||
{
|
||||
if (typeDict.TryGetValue(defineName, out var define))
|
||||
{
|
||||
return define;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
public override string ToString()
|
||||
{
|
||||
if (packs == null || packs.Count == 0)
|
||||
|
Reference in New Issue
Block a user