This commit is contained in:
2026-06-21 22:38:18 +08:00
parent 5f2c6d8ecd
commit c335d04ae3
46 changed files with 604 additions and 1009 deletions
+19 -1
View File
@@ -32,6 +32,9 @@ public class GameManager : MonoSingleton<GameManager>
/// <summary>头像字典(name → sprite),从 Resources/Avatar 加载</summary>
private Dictionary<string, Sprite> avatarSpriteDict = new Dictionary<string, Sprite>();
/// <summary>默认头像(新账号无头像时使用)</summary>
private Sprite defaultAvatar;
/// <summary>触发头像更新事件</summary>
public void TriggerAvatarChanged(Sprite sprite)
{
@@ -74,10 +77,25 @@ public class GameManager : MonoSingleton<GameManager>
public Sprite GetAvatarSprite(string avatarName)
{
if (avatarSpriteDict.Count == 0) InitAvatarCache();
avatarSpriteDict.TryGetValue(avatarName, out var sprite);
if (string.IsNullOrEmpty(avatarName) || !avatarSpriteDict.TryGetValue(avatarName, out var sprite))
sprite = GetDefaultAvatar();
return sprite;
}
private Sprite GetDefaultAvatar()
{
if (defaultAvatar == null && avatarSpriteDict.Count > 0)
{
// 取缓存中第一个头像作为默认
foreach (var kv in avatarSpriteDict)
{
defaultAvatar = kv.Value;
break;
}
}
return defaultAvatar;
}
/// <summary>
/// 更换头像:上传服务端 → 更新本地 → 触发全局刷新
/// </summary>