少年修仙传客户端代码仓库
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
90
91
92
93
using Snxxz.UI;
using System;
using System.Collections.Generic;
using System.Linq;
 
using UnityEngine;
using UnityEngine.UI;
 
public class DandrugCell : MonoBehaviour
{
    [SerializeField] public Button cellToggle;
    [SerializeField] public Text nameText;
    [SerializeField] public Text lockText;
    [SerializeField] public Image danIcon;
    [SerializeField] public Image danBgIcon;
    [SerializeField] public GameObject unSelectImg;
    [SerializeField] public GameObject selectImg;
    [SerializeField] public GameObject progressObj;
    [SerializeField] public Text progressValue;
    [SerializeField] public RedpointBehaviour Redpoint;
    [SerializeField] GameObject achieveReach;
    [SerializeField] Text achieveReachText;
    BlastFurnaceModel _furnaceModel;
    BlastFurnaceModel FurnaceModel
    {
        get
        {
            return _furnaceModel ?? (_furnaceModel = ModelCenter.Instance.GetModel<BlastFurnaceModel>());
        }
    }
 
    PackModel _playerPack;
    PackModel playerPack
    {
        get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PackModel>()); }
    }
 
    Color32 colorBlack = new Color32(64,28,6,255);
 
    public void SetDisplayModel(int index,int selectIndex)
    {
        AlchemyConfig alchemyModel = FurnaceModel.alchemyModellist[index];
        Redpoint.redpointId = FurnaceModel.danDrugRedPointlist[index].id;
        danIcon.SetSprite(alchemyModel.ICONID);
        danBgIcon.SetItemBackGround(alchemyModel.AlchemyQuality);
        nameText.text = alchemyModel.AlchemName;
        if (FurnaceModel.StoveLV < alchemyModel.BlastFurnaceLV)
        {
           lockText.gameObject.SetActive(true);
           lockText.text = Language.Get("BlastFurnace104", alchemyModel.BlastFurnaceLV);
            progressObj.SetActive(false);
        }
        else
        {
            progressObj.SetActive(true);
            lockText.gameObject.SetActive(false);
            float progress = (float)Math.Round(playerPack.GetAlchemyProgress(alchemyModel), 2);
            if(progress > 0)
            {
                progressValue.text = UIHelper.AppendStringColor(TextColType.Green, StringUtility.Contact(progress, "%"));
            }
            else
            {
                progressValue.text = StringUtility.Contact(progress, "%");
                progressValue.color = colorBlack;
            }
        }
     
        if (index == selectIndex)
        {
            unSelectImg.SetActive(false);
            selectImg.SetActive(true);
        }
        else
        {
            unSelectImg.SetActive(true);
            selectImg.SetActive(false);
        }
         bool isReach = FurnaceModel.IsHaveReachFull(alchemyModel);
        int alchemyLv = alchemyModel.AlchemyID % 10;
        if(isReach)
        {
            progressObj.SetActive(false);
            achieveReachText.text = Language.Get("BlastFurnace116",Language.Get(StringUtility.Contact("Num_CHS_", alchemyLv)));
            achieveReach.SetActive(true);
        }
        else
        {
            achieveReach.SetActive(false);
        }
    }
 
}