using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using GCGame.Table; public class InteractionRewItem : UIItemBase{ public Image _itemQuality; public Image _itemIcon; public Text _itemCount; public struct InteractionRewItemData { public int _itemId; public int _itemCount; public InteractionRewItemData(int itemId, int count) { _itemId = itemId; _itemCount = count; } } private int _itemId; private Tab_CommonItem commonItem = null; public override void Show(Hashtable hash) { base.Show(hash); InteractionRewItemData infoData = (InteractionRewItemData)hash["InitObj"]; _itemId = infoData._itemId; StopAllCoroutines(); StartCoroutine(InitItem(infoData._itemCount)); } IEnumerator InitItem(int itemCount) { yield return new WaitForEndOfFrame(); commonItem = TableManager.GetCommonItemByID(_itemId, 0); if (commonItem == null) { gameObject.SetActive(false); yield break; } LoadAssetBundle.Instance.SetImageSprite(_itemIcon, commonItem.Icon); LoadAssetBundle.Instance.SetImageSprite(_itemQuality, GCGame.Utils.GetItemQualityFrame(commonItem.Quality)); if (commonItem.QualityEffect > 0) { CommonItemContainerItem.ShowQualityEffect(true, commonItem.QualityEffect, _itemIcon.transform); } else { CommonItemContainerItem.ShowQualityEffect(false, commonItem.QualityEffect, _itemIcon.transform); } if (itemCount <= 0) { _itemCount.gameObject.SetActive(false); } else { _itemCount.gameObject.SetActive(true); _itemCount.text = itemCount.ToString(); } yield break; } public override void OnItemClick() { base.OnItemClick(); ItemTooltipsLogic.ShowItemTooltip(_itemId, ItemTooltipsLogic.ShowType.Info, _itemIcon.transform.position); } }