using IVDataFormat; using System.Numerics; using TMPro; using UnityEngine; using UnityEngine.UI; public class GoodsItemSimple : GoodsItem { protected override void Init() { imgBg = GetComponent(); imgIcon = transform.Find("icon").GetComponent(); imgSpirit = transform.Find("spirit").GetComponent(); imgRarity = transform.Find("rarity").GetComponent(); imgStars = transform.Find("stars").GetComponentsInChildren(); txtRarity = transform.Find("txtRarity").GetComponent(); } public override void ReleaseData() { if (imgIcon == null) Init(); imgIcon.sprite = null; } public override void SetGoods(int itype, int icode, BigInteger icount, bool bpvp = false) { if (imgIcon == null) Init(); imgIcon.sprite = AddressableMgr.GetIcon(itype, icode); switch (itype) { case cGoods.TCurrency: case cGoods.TExp: case cGoods.TBagTreasure: imgIcon.enabled = true; imgBg.sprite = AddressableMgr.GetGradeIcon(9); //imgBg.color = Global.CLR_RarityBack[cGoods.RNone]; imgSpirit.enabled = false; imgRarity.enabled = false; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.enabled = false; break; case cGoods.TBagWeapon: case cGoods.TBagArmorCape: case cGoods.TBagArmorHat: case cGoods.TBagArmorShoes: case cGoods.TBagAcceEar: case cGoods.TBagAcceNeck: case cGoods.TBagAcceRing: dGear gear = DataHandler.GetGearEquip(itype, icode); imgIcon.enabled = true; imgBg.enabled = true; imgBg.sprite = AddressableMgr.GetGradeIcon(gear.rarity);// Global.CLR_RarityBack[]; if (imgRarityLatter != null) { imgRarityLatter.sprite = AddressableMgr.GetGradeLatterIcon(gear.rarity); } if (imgRarityBg != null) { imgRarityBg.sprite = AddressableMgr.GetGradeLatterIcon(gear.rarity); } imgBg.color = Color.white; imgSpirit.enabled = false; imgRarity.color = Color.white; imgRarity.sprite = AddressableMgr.GetGradeLatterIcon(gear.rarity); imgRarity.enabled = true; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = i < gear.grade; txtRarity.text = Global.STR_Rarity[gear.rarity]; txtRarity.enabled = true; break; //imgIcon.enabled = true; //imgBg.color = Global.CLR_RarityBack[gear.rarity]; //imgSpirit.enabled = false; //imgRarity.color = Global.CLR_RarityFront[gear.rarity]; //imgRarity.enabled = true; //for (int i = 0; i < imgStars.Length; i++) // imgStars[i].enabled = i < gear.grade; //txtRarity.text = Global.STR_Rarity[gear.rarity]; //txtRarity.enabled = true; //break; case cGoods.TPet: imgIcon.enabled = true; int ipetrarity = DataHandler.GetPetRarity(icode); imgBg.color = Global.CLR_RarityBack[ipetrarity]; imgSpirit.enabled = false; imgRarity.color = Global.CLR_RarityFront[ipetrarity]; imgRarity.enabled = true; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.text = Global.STR_Rarity[ipetrarity]; txtRarity.enabled = true; break; case cGoods.TPetSpirit: imgIcon.enabled = true; if (icode < 0) { imgBg.color = Global.CLR_BackPetSpirit; imgSpirit.enabled = false; imgRarity.enabled = false; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.enabled = false; } else { int ispiritrarity = DataHandler.GetPetRarity(icode); imgBg.sprite = AddressableMgr.GetGradeIcon(ispiritrarity); imgBg.color = UnityEngine.Color.white; imgSpirit.enabled = true; imgRarity.color = Global.CLR_RarityFront[ispiritrarity]; imgRarity.enabled = true; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.text = Global.STR_Rarity[ispiritrarity]; txtRarity.enabled = true; } break; case cGoods.TSkillActive: case cGoods.TSkillPassive: imgIcon.enabled = true; int iskillrarity = DataHandler.GetSkillRarity(itype, icode); imgBg.color = Global.CLR_RarityBack[iskillrarity]; imgSpirit.enabled = false; imgRarity.color = Global.CLR_RarityFront[iskillrarity]; imgRarity.enabled = true; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.text = Global.STR_Rarity[iskillrarity]; txtRarity.enabled = true; break; case cGoods.TCosCloth: case cGoods.TCosWeapon: imgIcon.enabled = true; imgBg.color = Global.CLR_BackCos; imgSpirit.enabled = false; imgRarity.enabled = false; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.enabled = false; break; case cGoods.TBox: dBox box = DataHandler.SysBoxes[icode]; imgIcon.enabled = true; imgBg.color = Global.CLR_RarityBack[box.rarity]; imgSpirit.enabled = false; // 희귀도 없음. if (box.rarity <= cGoods.RNone) { imgRarity.enabled = false; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.enabled = false; } else { imgRarity.color = Global.CLR_RarityFront[box.rarity]; imgRarity.enabled = true; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = i < box.grade; txtRarity.text = Global.STR_Rarity[box.rarity]; txtRarity.enabled = true; } break; default: imgIcon.enabled = true; imgBg.sprite = AddressableMgr.GetGradeIcon(9); //imgBg.color = Global.CLR_RarityBack[cGoods.RNone]; imgSpirit.enabled = false; imgRarity.enabled = false; for (int i = 0; i < imgStars.Length; i++) imgStars[i].enabled = false; txtRarity.enabled = false; break; } if (bpvp) imgBg.color = Color.clear; } }