using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.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(); } } 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.SetActive(quality == model.GetReikiRootQuality(id)); m_Bottom.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].SetActive(isQualityProperty); m_NoneSymbols[i].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); } } } } }