少年修仙传客户端代码仓库
Client_PangDeRong
2018-11-22 80210877780a88db0383aa5eb7ef7b939a79500b
4742 【1.3】【前端】神秘限购开发
2个文件已修改
54 ■■■■■ 已修改文件
System/OpenServerActivity/MysticalPurchaseModel.cs 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseWin.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseModel.cs
@@ -14,7 +14,7 @@
        public event Action<int> onStateUpate;
        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
        bool isLogin = true;
        public override void Init()
        {
            OpenServerActivityCenter.Instance.Register((int)OpenServerActivityCenter.OSActivityType.MysticalPurchase, this);
@@ -22,12 +22,16 @@
        public void OnBeforePlayerDataInitialize()
        {
            storeModel.RefreshBuyShopLimitEvent -= UpdateBuyTimes;
            isLogin = true;
            mysticalShopDict.Clear();
            GlobalTimeEvent.Instance.halfMinuteEvent -= UpdateSecond;
            storeModel.RefreshBuyShopLimitEvent -= UpdateBuyTimes;
        }
        public void OnPlayerLoginOk()
        {
            isLogin = false;
            GlobalTimeEvent.Instance.halfMinuteEvent += UpdateSecond;
            storeModel.RefreshBuyShopLimitEvent += UpdateBuyTimes;
        }
@@ -35,6 +39,7 @@
        {
        }
        public bool IsOpen
        {
@@ -47,7 +52,13 @@
        public bool IsAdvance { get { return false; } }
        public bool priorityOpen { get { return false; } }
        public bool priorityOpen
        {
            get
            {
                return mysticalRedpoint.state == RedPointState.Simple;
            }
        }
        /// <summary>
        /// 更新物品购买次数
@@ -102,6 +113,7 @@
            return 0;
        }
        #region 协议
        private Dictionary<int, MysticalShop> mysticalShopDict = new Dictionary<int, MysticalShop>();
        public void UpdateMysticalShopInfo(HA806_tagMCMysticalShopTimeInfo info)
@@ -128,6 +140,8 @@
            {
                onStateUpate((int)OpenServerActivityCenter.OSActivityType.MysticalPurchase);
            }
            UpdateRedpoint();
        }
        public MysticalShop GetMysticalShop(int shopId)
@@ -171,5 +185,38 @@
                return endSec > 0 ? endSec : 0;
            }
        }
        #region 红点
        public const int MysticalRedKey = 20918;
        public Redpoint mysticalRedpoint = new Redpoint(MainRedDot.REDPOINT_OPENSERVER, MysticalRedKey);
        public void UpdateRedpoint()
        {
            if (isLogin) return;
            if(IsOpen)
            {
                mysticalRedpoint.state = RedPointState.Simple;
            }
            else
            {
                mysticalRedpoint.state = RedPointState.None;
            }
        }
        private void UpdateSecond()
        {
            if (isLogin || !priorityOpen) return;
            if(!IsOpen)
            {
                CloseRedPoint();
            }
        }
        public void CloseRedPoint()
        {
            mysticalRedpoint.state = RedPointState.None;
        }
        #endregion
    }
}
System/OpenServerActivity/MysticalPurchaseWin.cs
@@ -55,6 +55,7 @@
        private void SetDisplay()
        {
            purchaseModel.CloseRedPoint();
            UpdateSaleItems();
            UpdateMoneyInfo();
        }