| | |
| | | public class FairyGrabBossWin : Window
|
| | | {
|
| | | [SerializeField] CyclicScroll m_Bosses;
|
| | | [SerializeField] Text m_FairyName;
|
| | | [SerializeField] ItemCell[] m_DropItems;
|
| | | [SerializeField] Button m_KillRecord;
|
| | | [SerializeField] Button m_Goto;
|
| | | [SerializeField] Text m_SurplusTime;
|
| | |
|
| | | FairyGrabBossModel model { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } }
|
| | | #region Built-in
|
| | |
| | |
|
| | | protected override void AddListeners()
|
| | | {
|
| | | m_KillRecord.onClick.AddListener(KillRecord);
|
| | | m_Goto.onClick.AddListener(Goto);
|
| | | }
|
| | |
|
| | | protected override void OnPreOpen()
|
| | | {
|
| | | DisplaySurplusTime();
|
| | | DisplayBossInfo();
|
| | | GlobalTimeEvent.Instance.secondEvent += SecondEvent;
|
| | | model.bossSelectedEvent += BossSelectedEvent;
|
| | | }
|
| | |
|
| | | protected override void OnActived()
|
| | |
| | |
|
| | | protected override void OnPreClose()
|
| | | {
|
| | | GlobalTimeEvent.Instance.secondEvent -= SecondEvent;
|
| | | model.bossSelectedEvent -= BossSelectedEvent;
|
| | | }
|
| | |
|
| | | protected override void OnAfterClose()
|
| | |
| | | m_Bosses.MoveToCenter(bosses.IndexOf(model.selectBoss));
|
| | | }
|
| | |
|
| | | void DisplayBossInfo()
|
| | | {
|
| | | List<Item> dropItems;
|
| | | model.TryGetDropItems(model.selectBoss, out dropItems);
|
| | | for (int i = 0; i < m_DropItems.Length; i++)
|
| | | {
|
| | | m_DropItems[i].cellBtn.RemoveAllListeners();
|
| | | if (dropItems != null && i < dropItems.Count)
|
| | | {
|
| | | m_DropItems[i].gameObject.SetActive(true);
|
| | | var item = dropItems[i];
|
| | | ItemCellModel itemCellModel = new ItemCellModel(item.id, true, (ulong)item.count, item.bind ? 1 : 0);
|
| | | m_DropItems[i].Init(itemCellModel);
|
| | | m_DropItems[i].cellBtn.AddListener(() =>
|
| | | {
|
| | | ItemAttrData itemAttrData = new ItemAttrData(item.id, true, (ulong)item.count, -1, item.bind ? 1 : 0);
|
| | | ModelCenter.Instance.GetModel<ItemTipsModel>().SetItemTipsModel(itemAttrData);
|
| | | });
|
| | | }
|
| | | else
|
| | | {
|
| | | m_DropItems[i].gameObject.SetActive(false);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | int DefaultSelect()
|
| | | {
|
| | | return model.bosses[0];
|
| | | }
|
| | |
|
| | | void DisplaySurplusTime()
|
| | | {
|
| | | var seconds = model.surplusSeconds;
|
| | | if (seconds > 0)
|
| | | {
|
| | | m_SurplusTime.text = TimeUtility.SecondsToDHMSCHS(seconds);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_SurplusTime.text = Language.Get("ActivityEnd");
|
| | | }
|
| | | }
|
| | |
|
| | | private void Goto()
|
| | | {
|
| | | }
|
| | |
|
| | | private void KillRecord()
|
| | | {
|
| | | }
|
| | |
|
| | | private void SecondEvent()
|
| | | {
|
| | | DisplaySurplusTime();
|
| | | }
|
| | |
|
| | | private void BossSelectedEvent(int bossId)
|
| | | {
|
| | | DisplayBossInfo();
|
| | | }
|
| | | }
|
| | |
|
| | | }
|