using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class VipPrivilegeWidget : MonoBehaviour { [SerializeField] Image m_Symbol; [SerializeField] Image m_NullSymbol; [SerializeField] Text m_Description; public void Display(int id, int level) { var config = VipPrivilegeInfoConfig.Get(id); var value = VipPrivilegeInfoConfig.GetPrivilegeData(id, level); var label = VipPrivilegeInfoConfig.GetPrivilegeLabel(id, level); m_Symbol.SetActive(false); m_NullSymbol.SetActive(false); m_Description.SetActive(config.displayType > 1); switch (config.displayType) { case 2: if (!string.IsNullOrEmpty(label)) { m_Description.text = string.Format(label, value); } else { m_Description.text = value.ToString(); } break; case 3: if (!string.IsNullOrEmpty(label)) { m_Description.text = string.Format(label, value / 100); } else { m_Description.text = (value / 100).ToString(); } break; case 4: m_Description.text = label; break; case 5: m_NullSymbol.SetActive(value == 0); m_Description.SetActive(value > 0); if (value > 0) { if (!string.IsNullOrEmpty(label)) { m_Description.text = string.Format(label, value); } else { m_Description.text = value.ToString(); } } break; case 6: var isEmptyLabel = label.Equals("Null"); m_NullSymbol.SetActive(isEmptyLabel); m_Description.SetActive(!isEmptyLabel); if (!isEmptyLabel) { m_Description.text = label; } break; case 1: default: m_Symbol.SetActive(value > 0); m_NullSymbol.SetActive(value == 0); break; } } } }