using UnityEngine; using UnityEngine.UI; //公会查找列表,也是排行榜 public class GuildViewListCell : CellView { [SerializeField] Image rankImg; [SerializeField] Transform rankTextTf; [SerializeField] Text rankText; [SerializeField] GuildEmblemCell guildEmblem; [SerializeField] Text guildLevelText; [SerializeField] Text guildNameText; [SerializeField] Text leaderNameText; [SerializeField] Text totalFightPowerText; [SerializeField] Button opearteBtn; [SerializeField] Text opearteBtnText; [SerializeField] Text guildMemberCountText; [SerializeField] Button seeGuildBtn; public void Display(int index) { var guildID = GuildManager.Instance.pageIndexList[index]; var guildInfo = GuildManager.Instance.guildsDict[guildID]; if (guildInfo == null) return; if (guildInfo.Rank <= 3) { rankImg.SetActive(true); rankImg.SetSprite("guildnum" + guildInfo.Rank); rankImg.SetNativeSize(); rankTextTf.SetActive(false); } else { rankImg.SetActive(false); rankTextTf.SetActive(true); rankText.text = guildInfo.Rank.ToString(); } guildEmblem.Display(guildInfo.EmblemID, guildInfo.EmblemWord); guildLevelText.text = Language.Get("L1094") + guildInfo.FamilyLV; guildNameText.text = guildInfo.FamilyName; leaderNameText.text = guildInfo.LeaderName; totalFightPowerText.text = UIHelper.ReplaceLargeArtNum(guildInfo.totalFightPower); var config = FamilyConfig.Get(guildInfo.FamilyLV); guildMemberCountText.text = guildInfo.MemberCount + "/" + config.MemberMax; var state = GuildManager.Instance.GetRequestState(guildInfo); string key = ""; switch (state) { case 1: key = "Guild_17"; break; case 2: key = "Guild_21"; break; default: key = "Guild_22"; break; } opearteBtnText.text = Language.Get(key); int familyID = guildInfo.FamilyID; opearteBtn.AddListener(() => { GuildManager.Instance.SendApplyGuild(familyID, state == 2 ? 1 : 0); }); seeGuildBtn.AddListener(() => { UIManager.Instance.OpenWindow(guildID); }); } }