Kaynağa Gözat

神都宸游增加红点提示

huangxiaoyue 1 yıl önce
ebeveyn
işleme
2dcb487048

+ 18 - 0
GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs

@@ -741,6 +741,12 @@ namespace GFGGame
                 _allPlayTimes = ActivityDataManager.Instance.allTsyPlayTimes;
                 _bonusState = ActivityDataManager.Instance.luckyActTsyBonusState;
             }
+            else if (_typeId == ConstLimitTimeActivityType.ActLimitStlyc)
+            {
+                _activityId = ActivityDataManager.Instance.actLimitStlycId;
+                _allPlayTimes = ActivityDataManager.Instance.allLimitStlycTimes;
+                _bonusState = ActivityDataManager.Instance.limitStlycActBonusState;
+            }
 
             if (_activityId <= 0) return false;
             List<ActivityLuckybonusCfg> _bonueCfgs = ActivityLuckybonusCfgArray.Instance.GetCfgsByid(_activityId);
@@ -770,6 +776,18 @@ namespace GFGGame
         }
 
         /// <summary>
+        /// 开服活动(神都宸游)
+        /// </summary>
+        /// <returns></returns>
+        public bool GetOpenServerRed()
+        {
+           if (GetActLuckyBoxRewardRed(ConstLimitTimeActivityType.ActLimitStlyc) || GetGiftBagRewardRed() || GetMeiRiTeHuiRed())
+                return true;
+
+            return false;
+        }
+
+        /// <summary>
         /// 摘星-每日特惠
         /// </summary>
         /// <returns></returns>

+ 8 - 3
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -897,18 +897,23 @@ namespace GFGGame
 
             }
 
+            //神都宸游
+            if (redPointUpdateFrame == 16)
+                RedDotController.Instance.SetComRedDot(_ui.m_btnOpenServerActivity.target, RedDotDataManager.Instance.GetOpenServerRed(), "", -11, 5);
+
+
             // 阿福赠礼
             if (_ui.m_btnActivityAfuGift.target.visible)
             {
-                if (redPointUpdateFrame == 16)
+                if (redPointUpdateFrame == 17)
                     RedDotController.Instance.SetComRedDot(_ui.m_btnActivityAfuGift.target, ActivityAfuGiftDataManager.Instance.HaveCanGetReward(), "", -43, 2);
             }
             //海之市
-            if (redPointUpdateFrame == 17)
+            if (redPointUpdateFrame == 18)
                 RedDotController.Instance.SetComRedDot(_ui.m_btnHaiZhiShi.target, RedDotDataManager.Instance.GetFieldRed(), "", 13, -12);
 
             redPointUpdateFrame++;
-            if(redPointUpdateFrame > 17)
+            if(redPointUpdateFrame > 18)
             {
                 redPointUpdateFrame = -1;
             }

+ 15 - 5
GameClient/Assets/Game/HotUpdate/Views/OpenServerActivity/OpenServerActivityView.cs

@@ -57,19 +57,16 @@ namespace GFGGame
             _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_holderFog, "ui_Activity", "NewAtv_BG_tx");
         }
 
-        protected override void AddEventListener()
-        {
-            base.AddEventListener();
-        }
-
         protected override void OnShown()
         {
             base.OnShown();
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("Tx_bg");
             RefreshTimeText();
+            UpdateRedDot();
             Timers.inst.Add(1, 0, UpdateTime);
             Timers.inst.Add(0.3f, 1, ShowEffTime);
         }
+
         private void ShowEffTime(object param)
         {
             _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_holderTitle, "ui_Activity", "NewAtv_Text");
@@ -85,9 +82,22 @@ namespace GFGGame
             Timers.inst.Remove(ShowEffTime);
         }
 
+
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
+        }
+
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
+        }
+
+        private void UpdateRedDot()
+        {
+            RedDotController.Instance.SetComRedDot(_ui.m_btnTenShu, (RedDotDataManager.Instance.GetActLuckyBoxRewardRed(ConstLimitTimeActivityType.ActLimitStlyc) || RedDotDataManager.Instance.GetGiftBagRewardRed() || RedDotDataManager.Instance.GetMeiRiTeHuiRed()), "", -100, 11);
         }
 
         private void UpdateTime(object param)