using System;
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
public class CeremonyFirepartyWin : Window
|
{
|
[SerializeField] Button buyBtn;
|
[SerializeField] Text buyPriceText;
|
[SerializeField] Text remainTimeText;
|
[SerializeField] CommonItemBaisc fireItem;
|
[SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>();
|
|
List<FairylandCeremonyModel.AwardItem> itemlist;
|
ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } }
|
FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel<FairylandCeremonyModel>(); } }
|
PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
|
StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
|
|
StoreConfig storeConfig;
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void AddListeners()
|
{
|
buyBtn.AddListener(ClickBuy);
|
}
|
|
protected override void OnPreOpen()
|
{
|
GlobalTimeEvent.Instance.secondEvent += RefreshSecond;
|
itemlist = ceremonyModel.GetFireAwardlist();
|
Init();
|
}
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
GlobalTimeEvent.Instance.secondEvent -= RefreshSecond;
|
}
|
|
protected override void OnAfterClose()
|
{
|
|
}
|
|
private void Init()
|
{
|
storeConfig = ceremonyModel.GetFireIdByLv();
|
if (storeConfig == null) return;
|
|
buyPriceText.text = storeConfig.MoneyNumber.ToString();
|
ItemCellModel fireModel = new ItemCellModel(storeConfig.ItemID,true,(ulong)storeConfig.ItemCnt,storeConfig.IsBind);
|
fireItem.Init(fireModel);
|
fireItem.cellBtn.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(storeConfig.ItemID,true, (ulong)storeConfig.ItemCnt,-1,storeConfig.IsBind);
|
tipsModel.SetItemTipsModel(attrData);
|
});
|
|
if (itemlist == null) return;
|
|
for (int i = 0; i < itemBaiscs.Count; i++)
|
{
|
if (i < itemlist.Count)
|
{
|
itemBaiscs[i].gameObject.SetActive(true);
|
FairylandCeremonyModel.AwardItem itemData = itemlist[i];
|
ItemCellModel cellModel = new ItemCellModel(itemData.itemId, true,(ulong)itemData.itemCount,itemData.isBind);
|
itemBaiscs[i].Init(cellModel);
|
itemBaiscs[i].cellBtn.RemoveAllListeners();
|
itemBaiscs[i].cellBtn.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(itemData.itemId, true, (ulong)itemData.itemCount,-1,itemData.isBind);
|
tipsModel.SetItemTipsModel(attrData);
|
});
|
}
|
else
|
{
|
itemBaiscs[i].gameObject.SetActive(false);
|
}
|
}
|
|
RefreshSecond();
|
}
|
|
private void RefreshSecond()
|
{
|
int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony);
|
if (seconds > 0)
|
{
|
remainTimeText.text = StringUtility.Contact("<color=#8DDC11FF>", TimeUtility.SecondsToHMS(seconds), "</color>");
|
}
|
else
|
{
|
remainTimeText.text = UIHelper.AppendStringColor(TextColType.Red, Language.Get("XMZZ110"));
|
}
|
}
|
|
private void ClickBuy()
|
{
|
if(playerPack.GetEmptyGridCount(PackType.Item) < 1)
|
{
|
SysNotifyMgr.Instance.ShowTip("BagFull");
|
return;
|
}
|
storeModel.OnClickShopCell(storeConfig);
|
}
|
|
}
|
}
|