少年修仙传客户端代码仓库
Client_PangDeRong
2018-11-22 6bc12ee94875f85ed8af21165b65b203d3c2452e
4742 【1.3】【前端】神秘限购开发
4个文件已修改
67 ■■■■■ 已修改文件
System/MainInterfacePanel/MainInterfaceWin.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseModel.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseSaleItem.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseWin.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -84,6 +84,7 @@
        [SerializeField] UIEffect m_RedpackGetSfx;
        [SerializeField] Button m_SendRedbagBtn;
        [SerializeField] Button WishingAwardImg;
        [SerializeField] Button MysticalPurchaseImg;
        [SerializeField] Button m_GotoFairyGrabBoss;
        [SerializeField] Button m_FlyToFairyGrabBoss;
@@ -142,6 +143,7 @@
        FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } }
        FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel<FeatureNoticeModel>(); } }
        WishingPoolModel wishModel { get { return ModelCenter.Instance.GetModel<WishingPoolModel>(); } }
        MysticalPurchaseModel purchaseModel { get { return ModelCenter.Instance.GetModel<MysticalPurchaseModel>(); } }
        #region Built-in
        protected override void BindController()
        {
@@ -178,6 +180,7 @@
            m_RedBag.AddListener(RedPacketButton);
            m_SendRedbagBtn.AddListener(SendRedpacketBtn);
            WishingAwardImg.AddListener(ClickWishAward);
            MysticalPurchaseImg.AddListener(ClickMysticalPurchase);
            m_GotoFairyGrabBoss.AddListener(GotoFairyGrabBoss);
            m_FlyToFairyGrabBoss.AddListener(FlyToFairyGrabBoss);
        }
@@ -208,6 +211,7 @@
            m_MapSwitchingBehaviour.Init();
            m_BossBriefInfos.gameObject.SetActive(false);
            UpdateWishAwardImag();
            UpdateMysticalPurchaseImag();
            ArticleExperience();//关于经验条
            FriendQuestBtn();
            UpdateFairyRequest();
@@ -234,6 +238,7 @@
            NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent;
            fairyGrabBossModel.bossGrabHintEvent += bossGrabHintEvent;
            wishModel.UpdateWishAwardEvent += UpdateWishAwardImag;
            purchaseModel.UpdateNewMysticalEvent += UpdateMysticalPurchaseImag;
            fairyGrabBossModel.gotoBossStateUpdate += ShowFairyGrabBoss;
        }
@@ -387,6 +392,7 @@
            m_TeamInvitationEntrance.UnInit();
            m_FairyCallBehaviour.UnInit();
            horseRidBool = false;
            purchaseModel.UpdateNewMysticalEvent -= UpdateMysticalPurchaseImag;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;
            FunctionUnlockFlyObject.functionUnLockShowBeginEvent -= UnFlodFunctionArea;
            fairyModel.UpdateFairyRequestEvent -= UpdateFairyRequest;
@@ -670,6 +676,16 @@
            WindowCenter.Instance.Open<WishingGetItemWin>();
        }
        private void ClickMysticalPurchase()
        {
            WindowCenter.Instance.Open<OpenServerActivityWin>(false, (int)OpenServerActivityCenter.OSActivityType.MysticalPurchase);
        }
        private void UpdateMysticalPurchaseImag()
        {
            MysticalPurchaseImg.gameObject.SetActive(purchaseModel.priorityOpen);
        }
        private void UpdateWishAwardImag()
        {
            WishingAwardImg.gameObject.SetActive(wishModel.wishingAwardDict.Count > 0 ? true : false);
System/OpenServerActivity/MysticalPurchaseModel.cs
@@ -15,6 +15,7 @@
        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
        bool isLogin = true;
        public bool isOpenPrompting { get; set;}
        public override void Init()
        {
            OpenServerActivityCenter.Instance.Register((int)OpenServerActivityCenter.OSActivityType.MysticalPurchase, this);
@@ -22,6 +23,7 @@
        public void OnBeforePlayerDataInitialize()
        {
            isOpenPrompting = true;
            isLogin = true;
            mysticalShopDict.Clear();
            GlobalTimeEvent.Instance.halfMinuteEvent -= UpdateSecond;
@@ -187,6 +189,7 @@
        }
        #region 红点
        public event Action UpdateNewMysticalEvent;
        public const int MysticalRedKey = 20918;
        public Redpoint mysticalRedpoint = new Redpoint(MainRedDot.REDPOINT_OPENSERVER, MysticalRedKey);
        public void UpdateRedpoint()
@@ -200,6 +203,11 @@
            else
            {
                mysticalRedpoint.state = RedPointState.None;
            }
            if(UpdateNewMysticalEvent != null)
            {
                UpdateNewMysticalEvent();
            }
        }
@@ -216,6 +224,11 @@
        public void CloseRedPoint()
        {
            mysticalRedpoint.state = RedPointState.None;
            if (UpdateNewMysticalEvent != null)
            {
                UpdateNewMysticalEvent();
            }
        }
        #endregion
    }
System/OpenServerActivity/MysticalPurchaseSaleItem.cs
@@ -87,8 +87,22 @@
        private void ClickBuy()
        {
            if (mysticalShop == null) return;
            ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("MysticalPurchase104", mysticalShop.storeConfig.MoneyNumber)
                , (bool isOk) =>
                 {
                     if (isOk)
                     {
                         if(mysticalShop.GetRemainSellTime() > 0)
                         {
                             storeModel.SendBuyShopItem(this.mysticalShop.storeConfig, 1);
                         }
                         else
                         {
                            MessageWin.Inst.ShowFixedTip(Language.Get("MysticalPurchase105"));
                         }
                     }
                 });
            storeModel.SendBuyShopItem(this.mysticalShop.storeConfig,1);
        }
    }
}
System/OpenServerActivity/MysticalPurchaseWin.cs
@@ -31,11 +31,12 @@
        }
        protected override void OnPreOpen()
        {
            OpenServerActivityWin.tryCloseEvent += CloseOpenServerActivity;
            purchaseModel.UpdateMysticalShopEvent += UpdateSaleItems;
            storeModel.RefreshBuyShopLimitEvent += UpdateMoney;
            SetDisplay();
        }
        protected override void OnAfterOpen()
        {
            startPos = saleItemsContent.anchoredPosition3D;
@@ -43,6 +44,7 @@
        protected override void OnPreClose()
        {
            OpenServerActivityWin.tryCloseEvent -= CloseOpenServerActivity;
            purchaseModel.UpdateMysticalShopEvent -= UpdateSaleItems;
            storeModel.RefreshBuyShopLimitEvent -= UpdateMoney;
            saleItemsContent.anchoredPosition3D = startPos;
@@ -96,5 +98,23 @@
        {
            UpdateMoneyInfo();
        }
        private bool CloseOpenServerActivity()
        {
            if(purchaseModel.isOpenPrompting)
            {
                ConfirmCancel.ToggleConfirmCancel(Language.Get("Mail101"), Language.Get("MysticalPurchase103"),
                Language.Get("ConfirmCancel102"), (bool isOk, bool isToggle) =>
               {
                  if (isOk)
                  {
                       WindowCenter.Instance.CloseImmediately<OpenServerActivityWin>();
                  }
                   purchaseModel.isOpenPrompting = !isToggle;
              });
                return false;
            }
            return true;
        }
    }
}