using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class CZBMCell : CellView { //购买列表 [SerializeField] ItemCell[] m_Items; [SerializeField] Text m_GiftName; [SerializeField] Text m_GiftLimitTxt; [SerializeField] Image m_StateImg; [SerializeField] Button m_GetBtn; [SerializeField] Text m_BtnTxt; TextEx orgPrice; CZBMModel model { get { return ModelCenter.Instance.GetModel(); } } VipModel vipModel { get { return ModelCenter.Instance.GetModel(); } } public void Display(int index) { OperationBase operationBase; if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.CZBMGift, out operationBase)) { OperationCZBM operation = operationBase as OperationCZBM; int ctgID = (int)operation.CZBMGiftInfo[model.selectIndex].BuyCTGIDList[index].CTGID; var ctgInfo = CTGConfig.Get(ctgID); OrderInfoConfig orderInfoConfig; if (vipModel.TryGetOrderInfo(ctgID, out orderInfoConfig)) { m_BtnTxt.text = Language.Get("PriceBuy", UIHelper.GetMoneyFormat((int)orderInfoConfig.PayRMBNum)); var obj = m_GetBtn.FindComponent("Text", "Txt_orgPrice"); if (obj != null) orgPrice = obj as TextEx; if (orgPrice != null) { orgPrice.SetActiveIL(PlayerDatas.Instance.baseData.IsActive90Off); orgPrice.text = Language.Get("PayMoneyNum", UIHelper.GetMoneyFormat(orderInfoConfig.m_PayRMBNum)); } m_GetBtn.SetListener(()=>{ if (index != operation.CZBMGiftInfo[model.selectIndex].PlayerBuyIndex) { int ctgID2 = (int)operation.CZBMGiftInfo[model.selectIndex].BuyCTGIDList[operation.CZBMGiftInfo[model.selectIndex].PlayerBuyIndex].CTGID; var ctgInfo2 = CTGConfig.Get(ctgID2); SysNotifyMgr.Instance.ShowTip("CZBMLimit", ctgInfo2.Title); return; } vipModel.CTG(ctgID); }); } //显示物品 var _list = model.GetGiftsByCTGID(ctgID); for (int i = 0; i < m_Items.Length; i++) { if (i >= _list.Length) { m_Items[i].SetActive(false); continue; } m_Items[i].SetActive(true); var itemID = (int)_list[i].ItemID; var ItemCell = m_Items[i]; var Item = ItemConfig.Get(itemID); ItemCellModel cellModel = new ItemCellModel(itemID, true, (ulong)_list[i].ItemCount); ItemCell.Init(cellModel); ItemCell.button.RemoveAllListeners(); ItemCell.button.AddListener(() => { ItemTipUtility.Show(itemID); }); } m_GiftName.text = ctgInfo.Title; if (index == 0) { m_GiftLimitTxt.text = string.Empty; } else { int ctgID1 = (int)operation.CZBMGiftInfo[model.selectIndex].BuyCTGIDList[index - 1].CTGID; var ctgInfo1 = CTGConfig.Get(ctgID1); m_GiftLimitTxt.text = Language.Get("CZBMLimit", ctgInfo1.Title); } m_StateImg.SetActive(index < operation.CZBMGiftInfo[model.selectIndex].PlayerBuyIndex); m_GetBtn.SetActive(index > operation.CZBMGiftInfo[model.selectIndex].PlayerBuyIndex); //今日是否已购买 if (index == operation.CZBMGiftInfo[model.selectIndex].PlayerBuyIndex) { VipModel.RechargeCount _rechargeCount; if (vipModel.TryGetRechargeCount(ctgID, out _rechargeCount)) { m_StateImg.SetActive(_rechargeCount.todayCount > 0); m_GetBtn.SetActive(_rechargeCount.todayCount == 0); } } } } } }