using vnxbqy.UI; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class XianxiaMJCardCell : ILBehaviour { public UIEffect effHole; public ItemCell itemCell; UIEffect effCard; ButtonEx cardBtn; int curPosNum = 0; protected override void Awake() { effHole = proxy.GetWidgtEx("uieffecthole"); effCard = proxy.GetWidgtEx("uieffectcard"); itemCell = proxy.GetWidgtEx("ItemCell"); cardBtn = proxy.GetWidgtEx("CardBtn"); } //posnum 从1开始 public void Display(int posNum) { curPosNum = posNum; OperationBase operationBase = null; if (!OperationTimeHepler.Instance.TryGetOperationTime(HolidayXianXiaMJModel.operationType, out operationBase)) { return; } OperationXianXiaMJLottery operation = operationBase as OperationXianXiaMJLottery; effHole.Stop(); effCard.Stop(); itemCell.SetActiveIL(false); cardBtn.SetListener(SelectCard); cardBtn.SetActiveIL(true); if (!operation.awardItems.ContainsKey(posNum)) { cardBtn.SetColorful(null, true); } else { cardBtn.SetColorful(null, false); if (operation.awardItems[posNum].ItemLibType == OperationXianXiaMJLottery.bigAwardType) { effHole.Play(); } } } public void DisplaySingle(int posNum) { OperationBase operationBase = null; if (!OperationTimeHepler.Instance.TryGetOperationTime(HolidayXianXiaMJModel.operationType, out operationBase)) { return; } OperationXianXiaMJLottery operation = operationBase as OperationXianXiaMJLottery; if (!operation.awardItems.ContainsKey(posNum)) { itemCell.SetActiveIL(false); return; } var item = operation.awardItems[posNum]; itemCell.SetActiveIL(true); var model = new ItemCellModel((int)item.ItemID, false, item.ItemCount); itemCell.Init(model); HolidayXianXiaMJModel.Instance.showResultPos[posNum] = Time.time; if (operation.awardItems[posNum].ItemLibType == OperationXianXiaMJLottery.bigAwardType) { HolidayXianXiaMJModel.Instance.startWashTime = Time.time; } cardBtn.SetActiveIL(true); cardBtn.SetColorful(null, false); } void SelectCard() { OperationBase operationBase = null; if (!OperationTimeHepler.Instance.TryGetOperationTime(HolidayXianXiaMJModel.operationType, out operationBase)) { return; } OperationXianXiaMJLottery operation = operationBase as OperationXianXiaMJLottery; if (HolidayXianXiaMJModel.Instance.IsWashTime()) { return; } if (!operation.awardItems.ContainsKey(curPosNum)) { if (operation.selectBigAward == null) { SysNotifyMgr.Instance.ShowTip("XianXiaMJ31"); return; } if ((uint)HeroControler.Instance.GetMoneyCntIL(HolidayXianXiaMJModel.Instance.moneyType) < operation.costMoneyValue) { SysNotifyMgr.Instance.ShowTip("XianXiaMJ32"); return; } HolidayXianXiaMJModel.Instance.SendSelectCard(curPosNum); effCard.Play(); cardBtn.SetActiveIL(false); } else { if (operation.awardItems[curPosNum].ItemLibType == OperationXianXiaMJLottery.bigAwardType) { HolidayXianXiaMJModel.Instance.PopNextLevel(); } } } }