using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class FairySiegeHelpCell : CellView { [SerializeField] ButtonEx btnRule; [SerializeField] ButtonEx btnGet; [SerializeField] ImageEx imgHave; [SerializeField] List itemCells; [SerializeField] TextEx txtFinishInfo; [SerializeField] Slider slider; [SerializeField] Text txtNum; [SerializeField] Image imgRed; FairySiegeHelpModel model { get { return ModelCenter.Instance.GetModel(); } } public void Display(int id) { OperationFamilyRechargeConn act; OperationTimeHepler.Instance.TryGetOperation(FairySiegeHelpModel.operaType, out act); int needNum = act.needPlayers[index]; txtFinishInfo.text = Language.Get("FamilyRechargeTogether4", needNum); slider.value = (float)model.rechargePlayerIDs.Count / needNum; txtNum.text = model.rechargePlayerIDs.Count + "/" + needNum; for (int i = 0; i < itemCells.Count; i++) { if (i < act.rechargeInfo[needNum].Length) { itemCells[i].SetActive(true); int itemID = (int)act.rechargeInfo[needNum][i].ItemID; itemCells[i].Init(new ItemCellModel(itemID, false, (ulong)act.rechargeInfo[needNum][i].ItemCount)); itemCells[i].button.AddListener(() => { ItemTipUtility.Show(itemID); }); } else { itemCells[i].SetActive(false); } } int memberCnt = 0; PlayerFairyData.FairyData fairy = PlayerDatas.Instance.fairyData.fairy; if (fairy != null) { FamilyConfig cfg = FamilyConfig.Get(fairy.FamilyLV); memberCnt = cfg.memberCnt; } int state = model.GetAwardState(index); imgHave.SetActive(state == 2); int getNum = 0; model.getAwardPlayerNums.TryGetValue(needNum, out getNum); //gotInfo.text = Language.Get("FamilyRechargeTogether6", getNum, memberCnt); btnGet.SetActive(state != 2); imgRed.SetActive(state == 1); btnGet.interactable = state == 1; btnGet.SetColorful(null, state == 1); btnGet.AddListener(() => { model.SendGetAward(needNum); }); btnRule.SetListener(() => { model.nowIndex = index; WindowCenter.Instance.Open(); }); } } }