using Snxxz.UI; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace EnhancedUI.EnhancedScroller { public class KingFairyCtnRewardCell : ScrollerUI { KingFairyModel m_Model; KingFairyModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } [SerializeField] Text ctnWinTxt; [SerializeField] List itemList; [SerializeField] Button allotBtn; [SerializeField] Text allotBtnTxt; public override void Refresh(CellView cell) { var _index = cell.index; bool _final = _index < 0; for (int i = 0; i < itemList.Count; i++) { if (i < model.multipleWinAwardItems.Length) { var _itemArray = model.multipleWinAwardItems[i]; itemList[i].gameObject.SetActive(true); ItemCellModel cellModel = new ItemCellModel(_itemArray[0], false, (ulong)_itemArray[1]); itemList[i].Init(cellModel); itemList[i].button.onClick.RemoveAllListeners(); itemList[i].button.onClick.AddListener(() => { model.ViewKingFairyChest(_itemArray[0], _itemArray[1]); }); } else { itemList[i].gameObject.SetActive(false); } } ctnWinTxt.text = _final ? Language.Get("FamilyMatchFinisLianWin") : Language.Get("FamilyMatchLianWinReward", _index); allotBtn.gameObject.SetActive(_final || (model.kingFairyData.multipleWinCnt >= _index && model.IsSelfInKingFairy())); allotBtn.interactable = model.kingFairyData.leaderId == PlayerDatas.Instance.PlayerId && (_final || model.kingFairyData.allotCnt < _index); allotBtnTxt.text = (_final || model.kingFairyData.allotCnt < _index) ? Language.Get("FamilyMatchUnAssign") : Language.Get("FamilyMatchAssigned"); allotBtn.RemoveAllListeners(); allotBtn.onClick.AddListener(OnAllotClick); } private void OnAllotClick() { WindowCenter.Instance.Open(); } } }