72 lines
2.1 KiB
C#
72 lines
2.1 KiB
C#
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);
|
|
}
|
|
}
|