少年修仙传客户端代码仓库
lcy
2024-12-16 a39c35fc6449430cd02bccb681c4a0a880e46cd9
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
using System;
using UnityEngine;
 
namespace vnxbqy.UI
{
 
    public class SecretPlaceXBCell : MonoBehaviour
    {
        [SerializeField] public UIEffect effHole;
        [SerializeField] public ItemCell itemCell;
        [SerializeField]  UIEffect effCard;
        [SerializeField]  ButtonEx cardBtn;
 
        int curPosNum = 0;
 
        SecretPlaceXBModel model { get { return ModelCenter.Instance.GetModel<SecretPlaceXBModel>(); } }
        PackModel packModel { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
 
        //posnum 从1开始
        public void Display(int posNum)
        {
            curPosNum = posNum;
            
            effHole.Stop();
            effCard.Stop();
            itemCell.SetActiveIL(false);
            cardBtn.SetListener(SelectCard);
            cardBtn.SetActiveIL(true);
            if (!model.operationAct.awardItems.ContainsKey(posNum))
            {
                cardBtn.SetColorful(null, true);
            }
            else
            {
                cardBtn.SetColorful(null, false);
                if (model.operationAct.awardItems[posNum].ItemLibType == OperationXianXiaMJLottery.bigAwardType)
                { 
                    effHole.Play();
                }
            }
        }
 
        public void DisplaySingle(int posNum)
        {
            if (!model.operationAct.awardItems.ContainsKey(posNum))
            {
                itemCell.SetActiveIL(false);
                return;
            }
 
            var item = model.operationAct.awardItems[posNum];
 
            itemCell.SetActiveIL(true);
            itemCell.Init(new ItemCellModel((int)item.ItemID, false, item.ItemCount));
 
            model.showResultPos[posNum] = Time.time;
 
            cardBtn.SetActiveIL(true);
            cardBtn.SetColorful(null, false);
        }
 
        void SelectCard()
        {
            if (!model.IsJoin)
            {
                SysNotifyMgr.Instance.ShowTip("ActionUnOpen1");
                return;
            }
 
            if (!model.operationAct.awardItems.ContainsKey(curPosNum))
            {
                if (model.operationAct.selectBigAward == null)
                {
                    SysNotifyMgr.Instance.ShowTip("XianXiaMJ31");
                    return;
                }
                if (packModel.GetItemCountByID(PackType.Item, model.subItemID) < 1)
                {
                    if ((uint)HeroControler.Instance.GetMoneyCntIL(model.moneyType) < model.operationAct.costMoneyValue)
                    {
                        SysNotifyMgr.Instance.ShowTip("XianXiaMJ32");
                    }
                    else
                    {
                        storeModel.UseMoneyCheck(model.operationAct.costMoneyValue, () =>
                        {
                            model.SendSelectCard(curPosNum);
                            effCard.Play();
                            cardBtn.SetActiveIL(false);
                        }, 2);
 
 
                    }
                    return;
                }
 
                model.SendSelectCard(curPosNum);
                effCard.Play();
                cardBtn.SetActiveIL(false);
            }
            else
            {
                if (model.operationAct.awardItems[curPosNum].ItemLibType == OperationXianXiaMJLottery.bigAwardType)
                {
                    model.PopNextLevel();
                }
            }
 
        }
    }
 
   
}