using Cysharp.Threading.Tasks; using UnityEngine; using UnityEngine.UI; public class GuildAtkDefBatPlayerTop3Cell : MonoBehaviour { [SerializeField] Text rankValueText; //战斗次数 [SerializeField] Text starCnt; //星数 [SerializeField] Text nameText; [SerializeField] OfficialTitleCell officialTitleCell; [SerializeField] Button queryPlayerBtn; //点击查看玩家详情 [SerializeField] HorseController model; public void Display(HA525_tagSCFamilyAtkDefBatInfo.tagSCFamilyAtkDefBatMem data, int rank) { if (data == null) { rankValueText.text = "0"; nameText.text = Language.Get("L1124"); officialTitleCell.SetActive(false); model.SetActive(false); return; } officialTitleCell.SetActive(true); officialTitleCell.InitUI((int)data.RealmLV, (int)data.TitleID); starCnt.text = data.Star.ToString(); // 星数直接显示数字 rankValueText.text = Language.Get("GuildAtkDefBat36", data.BatCnt); // 战斗次数 nameText.text = data.Name; // 角色模型与坐骑 model.SetActive(true); int heroSkinID = ResolveHeroSkinID((int)data.ModelMark, (int)data.Job); int horseSkinID = HorseManager.Instance.GetOtherPlayerHorseSkinID((int)data.EquipShowSwitch); model.Create(horseSkinID, heroSkinID, rank == 1 ? 1f : 0.8f); queryPlayerBtn.SetListener(() => { AvatarHelper.TryViewOtherPlayerInfo((int)data.PlayerID, (int)data.ServerID, viewPlayerLineupType: (int)BattlePreSetType.GuildAtkDefBat); }); } /// /// 根据 ModelMark 和 Job 解析英雄皮肤ID /// int ResolveHeroSkinID(int modelMark, int job) { if (modelMark == 0) { PhantasmPavilionManager.Instance.TryGetDefaultID(PhantasmPavilionType.Model, job, out modelMark); } if (!ModelConfig.HasKey(modelMark)) return 0; var modelConfig = ModelConfig.Get(modelMark); return modelConfig.SkinID; } }