少年修仙传客户端代码仓库
client_Wu Xijin
2019-02-25 cdb0198fb8e85811ec1e06b15f36df9cbe0fdb9a
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
using UnityEngine;
using UnityEngine.UI;
 
namespace Snxxz.UI
{
    public class EquipPlaceCell : MonoBehaviour
    {
        [SerializeField] Button noneItemBtn;
        [SerializeField] ItemCell itemCell;
        [SerializeField] public RoleEquipType equipType;
 
        PackModel _playerPack;
        PackModel playerPack
        {
            get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PackModel>()); }
        }
 
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel
        {
            get
            {
                return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>());
            }
        }
 
        GetItemPathModel pathModel { get { return ModelCenter.Instance.GetModel<GetItemPathModel>(); } }
 
        private void OnEnable()
        {
            Display((int)this.equipType);
        }
 
        public void Display(int equipPlace)
        {
            if (this.equipType != (RoleEquipType)equipPlace) return;
 
            ItemModel itemModel = playerPack.GetItemByIndex(PackType.Equip,equipPlace);
            noneItemBtn.RemoveAllListeners();
            itemCell.cellBtn.onClick.RemoveAllListeners();
 
            if (itemModel == null)
            {
                itemCell.gameObject.SetActive(false);
                if(playerPack.IsShowAddEquipByPlace(equipPlace))
                {
                    noneItemBtn.gameObject.SetActive(true);
                    noneItemBtn.AddListener(()=>
                    {
                        playerPack.SaveRoleEquipToLocal(equipPlace,true);
                        playerPack.UpdateRoleEquipRed();
                        string guid = ItemLogicUtility.Instance.GetHighestScoreEquipByPlace(equipPlace);
                        if (string.IsNullOrEmpty(guid))
                        {
                            int pathId = playerPack.GetRoleEquipPathId(equipPlace);
                            if(pathId != 0)
                            {
                                pathModel.SetChinItemModel(pathId);
                            }
                        }
                        else
                        {
                            playerPack.SetLookIndex(guid);
                            playerPack.RefreshBagInfo();
                        }
                    });
                }
                else
                {
                    noneItemBtn.gameObject.SetActive(false);
                }
            }
            else
            {
                playerPack.CheckRoleEquipByPlace((RoleEquipType)equipPlace);
                playerPack.UpdateRoleEquipRed();
                noneItemBtn.gameObject.SetActive(false);
                itemCell.gameObject.SetActive(true);
                itemCell.Init(itemModel);
                itemCell.cellBtn.onClick.AddListener(() => {
                    itemTipsModel.SetItemTipsModel(PackType.Equip, itemModel.guid, false);
                    itemTipsModel.SetPutOnTipsBtn(itemTipsModel.curAttrData);
                    itemTipsModel.ShowUICtrl();
 
                });
            }
        }
    }
}