| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 | 
							
- using System.Collections.Generic;
 
- using FairyGUI;
 
- using UI.CommonGame;
 
- using UI.Studio;
 
- namespace GFGGame
 
- {
 
-     public class StudioBuyNumView : BaseWindow
 
-     {
 
-         private UI_StudioBuyNumUI _ui;
 
-         private int _limitId;
 
-         private RoleLimitData _studioData;
 
-         private LimitCfg _studioCfg;
 
-         private int _index;
 
-         private const int BUY_TYPE_0 = 0;
 
-         private const int BUY_TYPE_1 = 1;
 
-         public override void Dispose()
 
-         {
 
-             if (_ui != null)
 
-             {
 
-                 _ui.Dispose();
 
-                 _ui = null;
 
-             }
 
-             base.Dispose();
 
-         }
 
-         protected override void OnInit()
 
-         {
 
-             base.OnInit();
 
-             _ui = UI_StudioBuyNumUI.Create();
 
-             this.viewCom = _ui.target;
 
-             this.viewCom.Center();
 
-             this.modal = true;
 
-             viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
 
-             _ui.m_btnExchange.onClick.Add(() => { OnClickBtnBuy(BUY_TYPE_0); });
 
-             _ui.m_btnBuy.onClick.Add(() => { OnClickBtnBuy(BUY_TYPE_1); });
 
-         }
 
-         protected override void AddEventListener()
 
-         {
 
-             base.AddEventListener();
 
-             EventAgent.AddEventListener(ConstMessage.NOTICE_LIMIT_CHANGED, OnLimitChanged);
 
-         }
 
-         protected override void OnShown()
 
-         {
 
-             base.OnShown();
 
-             UpdateView();
 
-         }
 
-         private void UpdateView()
 
-         {
 
-             _limitId = (int)this.viewData;
 
-             _studioData = RoleLimitDataManager.GetLimitData(_limitId);
 
-             _studioCfg = LimitCfgArray.Instance.GetCfg(_limitId);
 
-             _ui.m_c1.selectedIndex = 0;
 
-             _ui.m_txtNum.text = string.Format("(今天已兑换{0}/{1}次)", _studioData.BuyTimes, _studioCfg.buyNum);
 
-             ItemUtil.UpdateItemNumAndNeedNum(_ui.m_comCostItem, _studioCfg.itemID, _studioCfg.itemNum, true);
 
-             if (_studioCfg.moneyId <= 0) return;
 
-             _ui.m_c1.selectedIndex = 1;
 
-             LimitCfgArray.Instance.GetMoneyIdAndNum(_studioCfg.id, _studioData.BuyTimes, 1, out int moneyId, out int moneyNum);
 
-             ItemUtil.UpdateItemNumAndNeedNum(_ui.m_comCostCurrent, _studioCfg.moneyId, moneyNum, true);
 
-         }
 
-         protected override void OnHide()
 
-         {
 
-             base.OnHide();
 
-         }
 
-         protected override void RemoveEventListener()
 
-         {
 
-             base.RemoveEventListener();
 
-             EventAgent.RemoveEventListener(ConstMessage.NOTICE_LIMIT_CHANGED, OnLimitChanged);
 
-         }
 
-         private void OnClickBtnBuy(int type)
 
-         {
 
-             if (_studioData.BuyTimes == _studioCfg.buyNum)
 
-             {
 
-                 PromptController.Instance.ShowFloatTextPrompt("今日购买次数已达上限", MessageType.ERR);
 
-                 return;
 
-             }
 
-             LimitCfgArray.Instance.GetMoneyIdAndNum(_studioCfg.id, _studioData.BuyTimes, 1, out int moneyId, out int moneyNum);
 
-             if (type == BUY_TYPE_0 && ItemDataManager.GetItemNum(_studioCfg.itemID) < _studioCfg.itemNum || type == BUY_TYPE_1 && ItemDataManager.GetItemNum(moneyId) < moneyNum)
 
-             {
 
-                 PromptController.Instance.ShowFloatTextPrompt("道具不足", MessageType.ERR);
 
-                 return;
 
-             }
 
-             RoleLimitSProxy.ReqBuyLimitPlayTimes(_limitId, type, 1).Coroutine();
 
-         }
 
-         private void OnLimitChanged(EventContext context = null)
 
-         {
 
-             if((int)context.data != _limitId)
 
-             {
 
-                 return;
 
-             }
 
-             PromptController.Instance.ShowFloatTextPrompt("购买成功", MessageType.SUCCESS);
 
-             UpdateView();
 
-             if (_studioData.BuyTimes == _studioCfg.buyNum)
 
-             {
 
-                 PromptController.Instance.ShowFloatTextPrompt("今日购买次数已达上限", MessageType.ERR);
 
-                 this.Hide();
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |