(client) feat:添加临时动画组件,添加逃跑逻辑
This commit is contained in:
@ -34,7 +34,7 @@ namespace Managers
|
||||
/// <summary>
|
||||
/// 获取当前启动步骤的描述。
|
||||
/// </summary>
|
||||
public string StepDescription { get; private set; } = "包图像管理器正在准备中...";
|
||||
public string StepDescription { get; } = "图像管理器正在加载中";
|
||||
|
||||
/// <summary>
|
||||
/// 初始化图像管理器,加载默认精灵并处理所有 ImageDef 定义。
|
||||
@ -240,7 +240,6 @@ namespace Managers
|
||||
{
|
||||
packagesImages.Clear();
|
||||
sprites.Clear();
|
||||
StepDescription = "包图像管理器数据已清理。"; // 更新状态
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -263,40 +262,9 @@ namespace Managers
|
||||
/// <returns>如果找到对应的精灵,则返回该精灵;否则返回 <see cref="defaultSprite"/>。</returns>
|
||||
public Sprite GetSprite(ImageDef ima)
|
||||
{
|
||||
if (ima == null) return defaultSprite;
|
||||
return GetSprite(ima.packID, ima.defName);
|
||||
return ima == null ? defaultSprite : GetSprite(ima.defName);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据包ID和精灵名称获取对应的精灵。
|
||||
/// </summary>
|
||||
/// <param name="packID">精灵所属的包ID。此参数在此版本中已不再用于字典查找,但为保持兼容性而保留。</param>
|
||||
/// <param name="name">精灵的名称(全局唯一的DefName)。</param>
|
||||
/// <returns>如果找到对应的精灵,则返回该精灵;否则返回 <see cref="defaultSprite"/>。</returns>
|
||||
public Sprite GetSprite(string packID, string name)
|
||||
{
|
||||
if (sprites.TryGetValue(name, out var sprite))
|
||||
return sprite;
|
||||
|
||||
// 如果未找到,返回默认精灵
|
||||
return defaultSprite;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据包ID、基础名称和索引获取被分割的子精灵。
|
||||
/// </summary>
|
||||
/// <param name="packID">精灵所属的包ID。此参数在此版本中已不再用于字典查找,但为保持兼容性而保留。</param>
|
||||
/// <param name="name">精灵的基础名称(全局唯一的DefName)。</param>
|
||||
/// <param name="index">子精灵的索引。</param>
|
||||
/// <returns>如果找到对应的子精灵,则返回该精灵;否则返回 <see cref="defaultSprite"/>。</returns>
|
||||
public Sprite GetSprite(string packID, string name, int index)
|
||||
{
|
||||
var fullName = $"{name}_{index}";
|
||||
return GetSprite(packID, fullName);
|
||||
}
|
||||
|
||||
// ---------- 新增的查询接口 ----------
|
||||
|
||||
/// <summary>
|
||||
/// 根据精灵名称(全局唯一的DefName)获取对应的精灵。
|
||||
/// </summary>
|
||||
@ -304,9 +272,7 @@ namespace Managers
|
||||
/// <returns>如果找到对应的精灵,则返回该精灵;否则返回 <see cref="defaultSprite"/>。</returns>
|
||||
public Sprite GetSprite(string name)
|
||||
{
|
||||
if (sprites.TryGetValue(name, out var sprite))
|
||||
return sprite;
|
||||
return defaultSprite;
|
||||
return sprites.GetValueOrDefault(name, defaultSprite);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -320,5 +286,12 @@ namespace Managers
|
||||
var fullName = $"{name}_{index}";
|
||||
return GetSprite(fullName);
|
||||
}
|
||||
|
||||
public Sprite[] GetSprites(string[] names)
|
||||
{
|
||||
if (names == null || names.Length == 0)
|
||||
return new[] { defaultSprite };
|
||||
return names.Select(name => GetSprite(name)).ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user