82 lines
2.0 KiB
C#
82 lines
2.0 KiB
C#
|
using System.Collections;
|
|||
|
using System.Collections.Generic;
|
|||
|
using UnityEngine;
|
|||
|
using UnityEngine.UI;
|
|||
|
using GCGame.Table;
|
|||
|
|
|||
|
public class CommonItem_Base : MonoBehaviour {
|
|||
|
public Image _ItemQuality;
|
|||
|
public Image _ItemIcon;
|
|||
|
public Text _ItemName;
|
|||
|
public Text _ItemCount;
|
|||
|
|
|||
|
protected int _ItemId = -1;
|
|||
|
protected int _ItemRemainCount = 0;
|
|||
|
|
|||
|
public static CommonItem_Base Instance;
|
|||
|
public virtual void OnEnable()
|
|||
|
{
|
|||
|
Instance = this;
|
|||
|
}
|
|||
|
|
|||
|
public void OnDisable()
|
|||
|
{
|
|||
|
_ItemId = -1;
|
|||
|
Instance = null;
|
|||
|
}
|
|||
|
|
|||
|
public virtual void InitItem(int itemId = -1, int itemCount = 0)
|
|||
|
{
|
|||
|
if(itemId == -1)
|
|||
|
{
|
|||
|
gameObject.SetActive(false);
|
|||
|
return;
|
|||
|
}
|
|||
|
_ItemId = itemId;
|
|||
|
var commonItem = TableManager.GetCommonItemByID(itemId, 0);
|
|||
|
if(commonItem == null)
|
|||
|
{
|
|||
|
Debug.LogError("CommonItem is null : " + itemId);
|
|||
|
gameObject.SetActive(false);
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
LoadAssetBundle.Instance.SetImageSprite(_ItemIcon, commonItem.Icon);
|
|||
|
LoadAssetBundle.Instance.SetImageSprite(_ItemQuality, GCGame.Utils.GetItemQualityFrame(commonItem.Quality));
|
|||
|
|
|||
|
if (_ItemName)
|
|||
|
_ItemName.text = commonItem.Name;
|
|||
|
|
|||
|
if(itemCount != 0)
|
|||
|
{
|
|||
|
if (_ItemCount)
|
|||
|
_ItemCount.text = _ItemRemainCount + "";
|
|||
|
}else
|
|||
|
{
|
|||
|
RefreshItemRemainCount();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public void OnItemIcon()
|
|||
|
{
|
|||
|
ItemTooltipsLogic.ShowItemTooltip(_ItemId, ItemTooltipsLogic.ShowType.GetPath, _ItemIcon.transform.position);
|
|||
|
}
|
|||
|
|
|||
|
public virtual void RefreshItemRemainCount()
|
|||
|
{
|
|||
|
var backPack = GameManager.gameManager.PlayerDataPool.BackPack;
|
|||
|
if(backPack == null)
|
|||
|
{
|
|||
|
Debug.LogError("backPack is null");
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
_ItemRemainCount = backPack.GetItemCountByDataId(_ItemId);
|
|||
|
if (_ItemCount)
|
|||
|
_ItemCount.text = _ItemRemainCount + "";
|
|||
|
}
|
|||
|
|
|||
|
//自定义刷新
|
|||
|
public virtual void Refresh() { }
|
|||
|
}
|