少年修仙传客户端代码仓库
hch
2024-12-16 9377811d0ba27047e1e5ec2348a28eba1033d59d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Friday, April 26, 2019
//--------------------------------------------------------
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
 
namespace vnxbqy.UI
{
 
    public class OtherPlayerEquipSlotBehaviour : MonoBehaviour
    {
        [SerializeField] Button m_ViewDetials;
        [SerializeField] Text m_SlotName;
        [SerializeField] Image m_Icon;
        [SerializeField] Image m_IconFrame;
        [SerializeField] Text m_Star;
 
        EquipSuitEffect m_EquipSuitEffect;
        EquipSuitEffect equipSuitEffect {
            get {
                if (m_EquipSuitEffect == null)
                {
                    m_EquipSuitEffect = EquipSuitEffect.Create(transform as RectTransform);
                }
                return m_EquipSuitEffect;
            }
        }
 
        OtherPlayerEquipModel model { get { return ModelCenter.Instance.GetModel<OtherPlayerEquipModel>(); } }
 
        int place;
        int itemId;
        int star;
 
        public void Display(int place, int itemId, int star)
        {
            this.place = place;
            this.itemId = itemId;
            this.star = star;
 
            DisplayBaseInfo();
        }
 
        public void Dispose()
        {
        }
 
        private void DisplayBaseInfo()
        {
            m_SlotName.text = UIHelper.GetEquipPlaceName(place);
            var hasEquip = this.itemId != 0;
            m_SlotName.SetActive(!hasEquip);
            equipSuitEffect.Display(this.itemId);
 
            if (hasEquip)
            {
                var config = ItemConfig.Get(this.itemId);
                m_Icon.SetSprite(config.IconKey);
                m_IconFrame.SetItemBackGround(config.ItemColor, config.QualityEchoType);
 
                m_Star.SetActive(true);
                m_Star.text = this.star >= 1 ? Language.Get("EquipStarLevel", this.star) : "";
            }
            else
            {
                m_Star.SetActive(false);
                m_Icon.SetSprite(GetDefaultEquipIcon(place));
                m_IconFrame.SetSprite("ItemNormal_a");
            }
        }
 
        private string GetDefaultEquipIcon(int place)
        {
            return StringUtility.Contact("EquipDefaultIcon_", place);
        }
 
        private void Start()
        {
            m_ViewDetials.SetListener(ViewEquipDetails);
        }
 
        private void ViewEquipDetails()
        {
            var equipInfo = model.GetEquipInfo(model.selectedLevel, this.place);
            if (equipInfo.itemId != 0)
            {
                ItemTipUtility.ShowCustomEquip(model.GetEquipInfo(model.selectedLevel, this.place));
            }
        }
 
    }
 
}