using vnxbqy.UI;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using System;
|
using UnityEngine.UI;
|
|
public class ExchangeActiveTokenWin : Window
|
{
|
[SerializeField] CyclicScroll m_EquipsScroll;
|
[SerializeField] Button m_CloseBtn;
|
[SerializeField] Button m_ConvertBtn;
|
[SerializeField] Text m_ActiveCanGetText;
|
[SerializeField] Text m_ActiveCountText;
|
|
private ExchangeActiveTokenModel m_Model { get { return ModelCenter.Instance.GetModel<ExchangeActiveTokenModel>(); } }
|
private const int MINLINECOUNT = 5;
|
|
protected override void AddListeners()
|
{
|
m_CloseBtn.AddListener(() => Close());
|
m_ConvertBtn.AddListener(OnConvertBtnDown);
|
}
|
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void OnAfterClose()
|
{
|
m_EquipsScroll.Dispose();
|
m_Model.RefreshActiveCanGetEvent -= RefreshActiveCanGet;
|
m_Model.ExchangetSuccessEvent -= ExchangeSuccess;
|
}
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
|
}
|
|
protected override void OnPreOpen()
|
{
|
RefreshEquipsScroll();
|
|
m_Model.RefreshActiveCanGetEvent += RefreshActiveCanGet;
|
m_Model.ExchangetSuccessEvent += ExchangeSuccess;
|
}
|
|
private void ExchangeSuccess()
|
{
|
RefreshEquipsScroll();
|
}
|
|
private void RefreshActiveCanGet()
|
{
|
m_ActiveCanGetText.text = m_Model.GetTotalActiveCount().ToString();
|
}
|
|
private void RefreshActiveCount()
|
{
|
m_ActiveCountText.text = UIHelper.ReplaceLargeNum(UIHelper.GetMoneyCnt(15));
|
}
|
|
|
private void OnConvertBtnDown()
|
{
|
m_Model.SendExchangeRequest();
|
}
|
|
private void RefreshEquipsScroll()
|
{
|
var itemModelList = m_Model.GetShowEquips();
|
int count = itemModelList.Count / 5 + (itemModelList.Count % 5 == 0 ? 0 : 1);
|
count = Mathf.Max(MINLINECOUNT, count);
|
|
List<ItemModel[]> itemModelAryList = new List<ItemModel[]>();
|
for (int i = 0; i < count; i++)
|
{
|
ItemModel[] itemModelAry = new ItemModel[5];
|
for (int j = 0; j < 5; j++)
|
{
|
int id = 5 * i + j;
|
if (id >= itemModelList.Count)
|
{
|
break;
|
}
|
itemModelAry[j] = itemModelList[id];
|
}
|
itemModelAryList.Add(itemModelAry);
|
}
|
m_EquipsScroll.Init(itemModelAryList);
|
|
RefreshActiveCanGet();
|
RefreshActiveCount();
|
}
|
|
}
|