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)  
 | 
        {  
 | 
            if (equip.config.ItemColor >= 7)  
 | 
            {  
 | 
                uieff.effectId = 1026;  
 | 
  
 | 
                uieff.PlayByArrIndex(equip.config.ItemColor - 7, true, true);  
 | 
            }  
 | 
            else  
 | 
            {  
 | 
                uieff.Stop();  
 | 
            }  
 | 
            //特效参考尺寸106*150 同比例缩放  
 | 
            var rect = this.transform.GetComponent<RectTransform>();  
 | 
            uieff.transform.localScale = new Vector3(rect.sizeDelta.x / 106f, rect.sizeDelta.y / 150f, 1);  
 | 
        }  
 | 
    }  
 | 
  
 | 
  
 | 
}  
 | 
  
 | 
  
 | 
  
 |