using System; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class CeremonyFirepartyWin : Window { //增加至尊烟花 [SerializeField] Button buyBtnZZ; [SerializeField] CommonItemBaisc fireItemZZ; [SerializeField] List itemBaiscsZZ = new List(); [SerializeField] Text buyPriceTextZZ; [SerializeField] Text remainTimeText; [SerializeField] Text FireScoreTotal; List itemlist; List itemlistZZ; FairylandCeremonyModel ceremonyModel { get { return ModelCenter.Instance.GetModel(); } } PackModel playerPack { get { return ModelCenter.Instance.GetModel(); } } StoreModel storeModel { get { return ModelCenter.Instance.GetModel(); } } StoreConfig storeConfig; StoreConfig storeConfigZZ; protected override void BindController() { } protected override void AddListeners() { buyBtnZZ.AddListener(ClickBuyZZ); } protected override void OnPreOpen() { GlobalTimeEvent.Instance.secondEvent += RefreshSecond; ceremonyModel.RefreshRechargeStateAct += ShowBuyZZCnt; itemlist = ceremonyModel.GetFireAwardlist(); itemlistZZ = ceremonyModel.GetFireAwardZZlist(); Init(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { GlobalTimeEvent.Instance.secondEvent -= RefreshSecond; ceremonyModel.RefreshRechargeStateAct -= ShowBuyZZCnt; } protected override void OnAfterClose() { } private void Init() { InitFireZZ(); ShowBuyZZCnt(); RefreshSecond(); } private void ShowBuyZZCnt() { FireScoreTotal.text = ceremonyModel.score.ToString(); } private void InitFireZZ() { storeConfigZZ = ceremonyModel.GetFireIdZZByLv(); if (storeConfigZZ == null) return; buyPriceTextZZ.text = storeConfigZZ.MoneyNumber.ToString(); ItemCellModel fireModel = new ItemCellModel(storeConfigZZ.ItemID, true, (ulong)storeConfigZZ.ItemCnt); fireItemZZ.Init(fireModel); fireItemZZ.button.AddListener(() => { ItemTipUtility.Show(storeConfigZZ.ItemID); }); if (itemlistZZ == null) return; for (int i = 0; i < itemBaiscsZZ.Count; i++) { if (i < itemlistZZ.Count) { itemBaiscsZZ[i].SetActive(true); FairylandCeremonyModel.AwardItem itemData = itemlistZZ[i]; ItemCellModel cellModel = new ItemCellModel(itemData.itemId, true, (ulong)itemData.itemCount); itemBaiscsZZ[i].Init(cellModel); itemBaiscsZZ[i].button.RemoveAllListeners(); itemBaiscsZZ[i].button.AddListener(() => { ItemTipUtility.Show(itemData.itemId); }); } else { itemBaiscsZZ[i].SetActive(false); } } } private void RefreshSecond() { int seconds = OperationTimeHepler.Instance.GetOperationSurplusTime(Operation.FairyCeremony); if (seconds > 0) { remainTimeText.text = StringUtility.Contact("", TimeUtility.SecondsToHMS(seconds), ""); } else { remainTimeText.text = UIHelper.AppendColor(TextColType.Red, Language.Get("XMZZ110")); } } private void ClickBuy() { if(playerPack.GetEmptyGridCount(PackType.Item) < 1) { SysNotifyMgr.Instance.ShowTip("BagFull"); return; } storeModel.OnClickShopCell(storeConfig); } private void ClickBuyZZ() { if (playerPack.GetEmptyGridCount(PackType.Item) < 1) { SysNotifyMgr.Instance.ShowTip("BagFull"); return; } storeModel.OnClickShopCell(storeConfigZZ); } } }