Files
JJBB/Assets/Project/Script/GUI/Equip/EquipGemSuitItemGemItem.cs
2024-08-23 15:49:34 +08:00

86 lines
2.2 KiB
C#

using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using GCGame.Table;
using Games.Mission;
using Games.Events;
using Games.Item;
public class EquipGemSuitItemGemItem : UIItemSelect
{
public Image _Icon;
public Image _Quality;
public Text _Num;
public GameObject _DisableGO;
private int _GemDataID;
public override void Show(Hashtable hash)
{
base.Show();
_GemDataID = (int)hash["InitObj"];
GameItem equipItem = null;
if (hash.ContainsKey("EquipItem"))
{
equipItem = (GameItem)hash["EquipItem"];
}
ShowGem(_GemDataID, equipItem);
}
public void ShowGem(int gemData, GameItem equipItem)
{
if (equipItem == null)
return;
Tab_CommonItem commonItem = TableManager.GetCommonItemByID(gemData, 0);
LoadAssetBundle.Instance.SetImageSprite(_Icon, commonItem.Icon);
LoadAssetBundle.Instance.SetImageSprite(_Quality, GCGame.Utils.GetItemQualityFrame(commonItem.Quality));
if (commonItem.QualityEffect > 0)
{
CommonItemContainerItem.ShowQualityEffect(true, commonItem.QualityEffect, _Icon.transform);
}
else
{
CommonItemContainerItem.ShowQualityEffect(false, commonItem.QualityEffect, _Icon.transform);
}
var itemCnt = GameManager.gameManager.PlayerDataPool.BackPack.GetItemCountByDataId(gemData);
if (itemCnt > 0)
{
_Num.text = itemCnt.ToString();
}
else
{
_Num.text = StrDictionary.GetClientDictionaryString("#{5526}") + itemCnt + "</color>";
}
bool isContainGem = false;
foreach (var gemInfo in equipItem.GemItems)
{
if (gemData == gemInfo.DataID)
{
isContainGem = true;
break;
}
}
if (isContainGem)
{
_DisableGO.SetActive(false);
}
else
{
_DisableGO.SetActive(true);
}
}
public override void OnItemClick()
{
base.OnItemClick();
ItemTooltipsLogic.ShowItemTooltip(_GemDataID, ItemTooltipsLogic.ShowType.GetPath, transform.position);
}
}