| 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);  | 
|         }  | 
|     }  | 
|   | 
|   | 
| }  | 
|   | 
|   | 
|   |