using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
//装备图标(装备位)
|
public class EquipCell : MonoBehaviour
|
{
|
Button button;
|
Image bgImage;//装备的底图,不同品质颜色
|
Image bgIconImage; //空装备的部位图标
|
Image iconImage; //装备图标
|
UIEffectPlayer uieff;
|
Text lvText;
|
|
void InitComponent()
|
{
|
button = this.GetComponent<Button>();
|
bgImage = this.GetComponent<Image>();
|
bgIconImage = this.GetComponent<Image>("equipempty");
|
iconImage = this.GetComponent<Image>("equipicon");
|
uieff = this.GetComponent<UIEffectPlayer>("uieffect");
|
lvText = this.GetComponent<Text>("lv");
|
}
|
|
public void Init(ItemModel equip)
|
{
|
if (iconImage == null)
|
{
|
InitComponent();
|
}
|
|
if (equip == null)
|
{
|
button?.RemoveAllListeners();
|
bgImage.SetSprite("equipQuality0");
|
bgIconImage?.SetActive(true);
|
iconImage.SetActive(false);
|
uieff?.Stop();
|
if (lvText != null)
|
lvText.text = string.Empty;
|
|
return;
|
}
|
|
if (button != null)
|
{
|
button.AddListener(() =>
|
{
|
ItemTipUtility.Show(equip.guid);
|
});
|
}
|
bgImage.SetSprite("equipQuality" + equip.config.ItemColor);
|
bgIconImage?.SetActive(false);
|
iconImage.SetActive(true);
|
iconImage.SetOrgSprite(equip.config.IconKey);
|
if (lvText != null)
|
lvText.text = Language.Get("L1113", EquipModel.Instance.GetEquipLV(equip));
|
|
if (uieff == null)
|
{
|
//等美术提供装备的效果特效(需要特效图)
|
// int effectID = EquipModel.Instance.equipUIEffects[Math.Min(equip.config.ItemColor, EquipModel.Instance.equipUIEffects.Length) - 1];
|
// if (effectID == 0)
|
// {
|
// uieff.Stop();
|
// }
|
// else
|
// {
|
// uieff.effectId = effectID;
|
// uieff.Play();
|
// }
|
}
|
}
|
|
|
}
|
|
|
|