//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Friday, December 22, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class DemonJarKillRecordWin : Window { [SerializeField] DemonJarKillRecordBehaviour[] m_KillRecords; [SerializeField] Button m_Close; DemonJarModel demonJarModel { get { return ModelCenter.Instance.GetModel(); } } FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { m_Close.AddListener(CloseClick); } protected override void OnPreOpen() { if (demonJarModel.IsPersonalBoss(findPreciousModel.ViewKillRecordsBoss)) { ShowFakeKillRecords(); } else { ShowKillRecords(); } } protected override void OnAfterOpen() { } protected override void OnPreClose() { } protected override void OnAfterClose() { } #endregion private void ShowKillRecords() { var records = findPreciousModel.GetBossKillRecords(findPreciousModel.ViewKillRecordsBoss); if (records == null) { for (int i = 0; i < m_KillRecords.Length; i++) { var behaviour = m_KillRecords[i]; behaviour.gameObject.SetActive(false); } } else { for (int i = 0; i < m_KillRecords.Length; i++) { var behaviour = m_KillRecords[i]; if (i < records.Count) { behaviour.gameObject.SetActive(true); behaviour.Display(records[i]); } else { behaviour.gameObject.SetActive(false); } } } } private void ShowFakeKillRecords() { var records = demonJarModel.GetFakeBossKillRecords(findPreciousModel.ViewKillRecordsBoss); if (records == null) { for (int i = 0; i < m_KillRecords.Length; i++) { var behaviour = m_KillRecords[i]; behaviour.gameObject.SetActive(false); } } else { for (int i = 0; i < m_KillRecords.Length; i++) { var behaviour = m_KillRecords[i]; if (i < records.Count) { behaviour.gameObject.SetActive(true); behaviour.Display(records[i]); } else { behaviour.gameObject.SetActive(false); } } } } } }