少年修仙传客户端代码仓库
client_Wu Xijin
2019-06-13 033958214c0b16d7e7b93cc821b018c295251867
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
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
 
namespace Snxxz.UI
{
    public class ReikiQualityCell : CellView
    {
        [SerializeField] Text m_QualityName;
        [SerializeField] Text[] m_PropertyValues;
        [SerializeField] Transform[] m_NoneSymbols;
        [SerializeField] Transform m_CurrentSymbol;
        [SerializeField] Transform m_Bottom;
 
        ReikiRootModel model { get { return ModelCenter.Instance.GetModel<ReikiRootModel>(); } }
 
        public void Display(int id, int quality)
        {
            m_QualityName.text = ReikiRootModel.GetQualityLabel(quality);
            m_QualityName.color = UIHelper.GetUIColor(model.GetQualityColor(quality), true);
 
            var job = PlayerDatas.Instance.baseData.Job;
            var totalPropertys = model.qualityPropertySorts[job];
 
            var propertys = model.GetReikiQualityProperties(id);
 
            m_CurrentSymbol.gameObject.SetActive(quality == model.GetReikiRootQuality(id));
 
            m_Bottom.gameObject.SetActive(quality % 2 != 0);
 
            for (int i = 0; i < m_PropertyValues.Length; i++)
            {
                var isQualityProperty = false;
                var property = 0;
                if (i < totalPropertys.Count)
                {
                    property = totalPropertys[i];
                    isQualityProperty = model.IsQualityProperty(id, property);
                }
 
                m_PropertyValues[i].gameObject.SetActive(isQualityProperty);
                m_NoneSymbols[i].gameObject.SetActive(!isQualityProperty && i < totalPropertys.Count);
                if (isQualityProperty)
                {
                    var qualityProperty = propertys.Find((x) =>
                     {
                         return x.property == property;
                     });
                    var value = model.GetQualityProperty(quality, qualityProperty.propertyValues);
                    m_PropertyValues[i].text = "+" + PlayerPropertyConfig.GetValueDescription(property, value, true);
                }
            }
        }
    }
}