using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
using System.Collections.Generic;
|
|
namespace vnxbqy.UI
|
{
|
public class NewYearCeremonyPeopleToHiWin : Window
|
{
|
[SerializeField] ScrollerController awardCtrl;
|
[SerializeField] ScrollerController taskCtrl;
|
[SerializeField] Text hiPointText;
|
|
List<NewAllPeoplePartyConfig> taskConfigs;
|
List<NewAllPeoplePartyAwardConfig> awardConfigs;
|
NewYearFairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<NewYearFairylandCeremonyModel>(); } }
|
|
int presentAwardIndex = 0;
|
|
protected override void BindController()
|
{
|
awardCtrl.OnRefreshCell += RefreshAwardCell;
|
taskCtrl.OnRefreshCell += RefreshTaskCell;
|
}
|
|
protected override void AddListeners()
|
{
|
|
}
|
|
protected override void OnPreOpen()
|
{
|
ceremonyModel.RefreshHiAwardStateAct += CreateAwardCell;
|
Init();
|
}
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
ceremonyModel.RefreshHiAwardStateAct -= CreateAwardCell;
|
}
|
|
protected override void OnAfterClose()
|
{
|
|
}
|
|
private void Init()
|
{
|
hiPointText.text = ceremonyModel.sumHiPoint.ToString();
|
ceremonyModel.IsPeopleAwardRecive(out presentAwardIndex);
|
taskConfigs = ceremonyModel.GetPeoplePartTasklist();
|
awardConfigs = ceremonyModel.GetPeoplePartAwardlist();
|
CreateAwardCell();
|
CreateTaskCell();
|
taskCtrl.JumpIndex(0);
|
awardCtrl.JumpIndex(presentAwardIndex - 1 < 0 ? 0 : presentAwardIndex - 1);
|
}
|
|
private void CreateTaskCell()
|
{
|
if (taskCtrl.GetNumberOfCells(taskCtrl.m_Scorller) > 0)
|
{
|
taskCtrl.m_Scorller.RefreshActiveCellViews();
|
}
|
else
|
{
|
taskCtrl.Refresh();
|
for(int i = 0; i < taskConfigs.Count; i++)
|
{
|
taskCtrl.AddCell(ScrollerDataType.Header,i);
|
}
|
taskCtrl.Restart();
|
}
|
}
|
|
private void RefreshTaskCell(ScrollerDataType type, CellView cell)
|
{
|
NewYearToHiTaskCell taskCell = cell.GetComponent<NewYearToHiTaskCell>();
|
if (taskCell == null) return;
|
|
taskCell.Init(taskConfigs[cell.index]);
|
}
|
|
private void CreateAwardCell()
|
{
|
if (awardCtrl.GetNumberOfCells(awardCtrl.m_Scorller) > 0)
|
{
|
awardCtrl.m_Scorller.RefreshActiveCellViews();
|
}
|
else
|
{
|
awardCtrl.Refresh();
|
for (int i = 0; i < awardConfigs.Count; i++)
|
{
|
awardCtrl.AddCell(ScrollerDataType.Header, i);
|
}
|
awardCtrl.Restart();
|
}
|
}
|
|
private void RefreshAwardCell(ScrollerDataType type, CellView cell)
|
{
|
NewYearToHiAwardCell awardCell = cell.GetComponent<NewYearToHiAwardCell>();
|
if (awardCell == null) return;
|
|
awardCell.Init(awardConfigs[cell.index]);
|
}
|
|
}
|
}
|