using System.Collections.Generic;
|
using UnityEngine;
|
|
public class ArenaChallengeWin : UIBase
|
{
|
[SerializeField] ArenaChallengeVoucher voucher;
|
[SerializeField] ButtonEx btnRefresh;
|
[SerializeField] TextEx txtFightPoint;
|
[SerializeField] ImageEx imgMoneyIcon;
|
[SerializeField] TextEx txtMoneyCount;
|
[SerializeField] ScrollerController scrollerController;
|
|
protected override void InitComponent()
|
{
|
base.InitComponent();
|
btnRefresh.SetListener(() =>
|
{
|
// 货币不足
|
if (!UIHelper.CheckMoneyCount(ArenaManager.Instance.currencyType, ArenaManager.Instance.currencyValue, 1))
|
return;
|
ArenaManager.Instance.SendArenaMatch(true);
|
});
|
|
}
|
|
protected override void OnPreOpen()
|
{
|
base.OnPreOpen();
|
// RankModel.Instance.onRankRefresh += OnRankRefresh;
|
scrollerController.OnRefreshCell += OnRefreshCell;
|
ArenaManager.Instance.OnArenaMatchListEvent += OnArenaMatchListEvent;
|
PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefresh;
|
// ArenaManager.Instance.OnUpdateArenaPlayerInfo += OnUpdateArenaPlayerInfo;
|
// ArenaManager.Instance.OnUpdateGameRecInfo += OnUpdateGameRecInfo;
|
// Display();
|
Display();
|
}
|
|
protected override void OnPreClose()
|
{
|
base.OnPreClose();
|
// RankModel.Instance.onRankRefresh -= OnRankRefresh;
|
scrollerController.OnRefreshCell -= OnRefreshCell;
|
ArenaManager.Instance.OnArenaMatchListEvent -= OnArenaMatchListEvent;
|
PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefresh;
|
// ArenaManager.Instance.OnUpdateArenaPlayerInfo -= OnUpdateArenaPlayerInfo;
|
// ArenaManager.Instance.OnUpdateGameRecInfo -= OnUpdateGameRecInfo;
|
}
|
|
private void PlayerDataRefresh(PlayerDataType type)
|
{
|
if (type != PlayerDataType.ChallengeVoucher)
|
return;
|
Display();
|
}
|
|
private void OnArenaMatchListEvent()
|
{
|
Display();
|
|
}
|
|
private void CreateScroller()
|
{
|
scrollerController.Refresh();
|
List<ArenaMatchInfo> list = ArenaManager.Instance.matchInfoList;
|
if (!list.IsNullOrEmpty())
|
{
|
for (int i = 0; i < list.Count; i++)
|
{
|
scrollerController.AddCell(ScrollerDataType.Header, i);
|
}
|
}
|
scrollerController.Restart();
|
}
|
|
void OnRefreshCell(ScrollerDataType type, CellView cell)
|
{
|
var _cell = cell.GetComponent<ArenaChallengeCell>();
|
_cell?.Display(cell.index);
|
}
|
|
void Display()
|
{
|
CreateScroller();
|
voucher.Display();
|
txtFightPoint.text = UIHelper.ReplaceLargeArtNum(PlayerDatas.Instance.baseData.FightPower);
|
imgMoneyIcon.SetIconWithMoneyType(ArenaManager.Instance.currencyType);
|
txtMoneyCount.text = UIHelper.ShowUseMoney(ArenaManager.Instance.currencyType, ArenaManager.Instance.currencyValue);
|
}
|
}
|