using TMPro; using UnityEngine; using IVDataFormat; using UnityEngine.UI; public class EScrPvpRank : EScrCell { private Image imgTier; private Image imgTierNum; private Image imgChar; private Image imgRank; private TextMeshProUGUI txtRank; private TextMeshProUGUI txtLv; private TextMeshProUGUI txtName; private TextMeshProUGUI txtPoint; public override void InitCell() { Transform trf = transform; imgTier = trf.Find("imgTier").GetComponent(); imgTierNum = trf.Find("imgTierNum").GetComponent(); imgChar = trf.Find("imgChar").GetComponent(); imgRank = trf.Find("imgRank").GetComponent(); txtRank = trf.Find("txtRank").GetComponent(); txtLv = trf.Find("txtLv").GetComponent(); txtName = trf.Find("txtName").GetComponent(); txtPoint = trf.Find("txtPoint").GetComponent(); } public override void RefreshCellView() { SetData(itemID); } public override void SetData(int itemid) { itemID = itemid; txtRank.text = FormatString.TextRank(itemID); txtRank.gameObject.SetActive(true); imgRank.gameObject.SetActive(false); if (itemID <= 3) { txtRank.gameObject.SetActive(false); imgRank.gameObject.SetActive(true); imgRank.sprite = PvpMgr.SGetRankImg(itemID); } if (DataHandler.TryGetPvpRank(itemID, out dPvpRank rank)) { if (rank.tier <= 9) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x - 2, imgTier.rectTransform.anchoredPosition.y + 3, 0); else if (rank.tier <= 12) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x - 1, imgTier.rectTransform.anchoredPosition.y + 7, 0); else if (rank.tier <= 30) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x, imgTier.rectTransform.anchoredPosition.y + 2, 0); else if (rank.tier <= 48) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x, imgTier.rectTransform.anchoredPosition.y, 0); else if (rank.tier <= 51) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x, imgTier.rectTransform.anchoredPosition.y + 2, 0); else if (rank.tier <= 57) imgTierNum.rectTransform.anchoredPosition = new Vector3(imgTier.rectTransform.anchoredPosition.x, imgTier.rectTransform.anchoredPosition.y - 3, 0); SetInfo(rank.playerIcon, rank.playerLv, rank.playerName, rank.tier, rank.point); } else { imgTier.enabled = false; imgTierNum.enabled = false; imgChar.enabled = false; txtLv.text = null; txtName.text = null; txtPoint.text = null; } } public void SetInfo(int iicon, int ilv, string strname, int itier, int irp) { imgChar.sprite = AddressableMgr.GetPlayerIcon(iicon); imgChar.enabled = true; imgTier.sprite = PvpMgr.SGetTierImg(itier); imgTier.enabled = true; imgTierNum.sprite = PvpMgr.SGetTierNumImg(itier); imgTierNum.enabled = true; txtLv.text = FormatString.TextLv(ilv); txtName.text = strname; txtPoint.text = FormatString.TextRp(irp); } public void SetRank(int irank) { txtRank.text = FormatString.TextRank(irank); } }