public static class AvatarHelper
|
{
|
|
public static AvatarModel GetAvatarModel(int playerId, int face, int facePic, int job = 0)
|
{
|
bool isMyself = playerId == PlayerDatas.Instance.PlayerId;
|
return isMyself ? GetMyAvatarModel() : GetOtherAvatarModel(face, facePic, job);
|
}
|
|
//获取头像信息(如果表中不存在,返回默认的)
|
public static AvatarModel GetOtherAvatarModel(int face, int facePic, int job = 0)
|
{
|
int nowFace = GetOtherAvatarID(face, job);
|
int nowfacePic = GetOtherAvatarFrameID(facePic, job);
|
int faceEffectID = GetAvatarEffectID(nowFace);
|
int facePicEffectID = GetAvatarFrameDefaultID(nowfacePic);
|
return new AvatarModel(nowFace, nowfacePic, faceEffectID, facePicEffectID);
|
}
|
|
//获取我的头像信息(如果表中不存在 或 已过期,返回默认的)
|
public static AvatarModel GetMyAvatarModel()
|
{
|
int nowFace = GetMyAvatarID();
|
int nowfacePic = GetMyAvatarFrameID();
|
int faceEffectID = GetAvatarEffectID(nowFace);
|
int facePicEffectID = GetAvatarFrameDefaultID(nowfacePic);
|
return new AvatarModel(nowFace, nowfacePic, faceEffectID, facePicEffectID);
|
}
|
|
public static AvatarModel GetDefaultAvatarModel(int job = 0)
|
{
|
int nowFace = GetAvatarDefaultID(job);
|
int nowfacePic = GetAvatarFrameDefaultID(job);
|
int faceEffectID = GetAvatarEffectID(nowFace);
|
int facePicEffectID = GetAvatarFrameDefaultID(nowfacePic);
|
return new AvatarModel(nowFace, nowfacePic, faceEffectID, facePicEffectID);
|
}
|
|
public static int GetAvatarID(int playerId, int nowID, int job)
|
{
|
bool isMyself = playerId == PlayerDatas.Instance.PlayerId;
|
return isMyself ? GetMyAvatarID() : GetOtherAvatarID(nowID, job);
|
}
|
|
public static int GetAvatarFrameID(int playerId, int nowID, int job)
|
{
|
bool isMyself = playerId == PlayerDatas.Instance.PlayerId;
|
return isMyself ? GetMyAvatarFrameID() : GetOtherAvatarFrameID(nowID, job);
|
}
|
|
// 获取其他玩家头像id(封包中的id在表中不存在显示默认的)
|
public static int GetOtherAvatarID(int nowID, int job)
|
{
|
if (PlayerFaceConfig.HasKey(nowID))
|
return nowID;
|
return PhantasmPavilionModel.Instance.TryGetDefaultID(PhantasmPavilionTab.Avatar, job, out int defaultID) ? defaultID : 0;
|
}
|
|
public static int GetOtherAvatarFrameID(int nowID, int job)
|
{
|
if (PlayerFaceConfig.HasKey(nowID))
|
return nowID;
|
return PhantasmPavilionModel.Instance.TryGetDefaultID(PhantasmPavilionTab.AvatarFrame, job, out int defaultID) ? defaultID : 0;
|
}
|
|
//返回玩家头像id(当前装备的过期了显示默认的)
|
public static int GetMyAvatarID()
|
{
|
PhantasmPavilionModel.Instance.TryGetNowShowID(PhantasmPavilionTab.Avatar, out int defaultID);
|
return defaultID;
|
}
|
|
public static int GetMyAvatarFrameID()
|
{
|
PhantasmPavilionModel.Instance.TryGetNowShowID(PhantasmPavilionTab.AvatarFrame, out int defaultID);
|
return defaultID;
|
}
|
|
//根据job 直接返回对应的默认头像id
|
public static int GetAvatarDefaultID(int job)
|
{
|
PhantasmPavilionModel.Instance.TryGetDefaultID(PhantasmPavilionTab.Avatar, job, out int defaultID);
|
return defaultID;
|
}
|
|
public static int GetAvatarFrameDefaultID(int job)
|
{
|
PhantasmPavilionModel.Instance.TryGetDefaultID(PhantasmPavilionTab.AvatarFrame, job, out int defaultID);
|
return defaultID;
|
}
|
|
public static int GetAvatarEffectID(int id)
|
{
|
PhantasmPavilionModel.Instance.TryGetEffectID(PhantasmPavilionTab.Avatar, id, out int effectID);
|
return effectID;
|
}
|
|
public static int GetAvatarFrameEffectID(int id)
|
{
|
PhantasmPavilionModel.Instance.TryGetEffectID(PhantasmPavilionTab.AvatarFrame, id, out int effectID);
|
return effectID;
|
}
|
|
//获取指定头像底图品质
|
public static int GetAvatarBgColor(int faceID)
|
{
|
int defaultColor = 1;//默认品质是白色
|
if (!PlayerFaceConfig.HasKey(faceID))
|
return defaultColor;
|
return PlayerFaceConfig.Get(faceID).BgColor;
|
}
|
|
//获取指定头像图片名
|
public static string GetAvatarBgColorStr(int faceID)
|
{
|
int bgColor = GetAvatarBgColor(faceID);
|
return StringUtility.Contact("AvatarBgColor", bgColor);
|
}
|
}
|