Browse Source

换新红点

zhaoyang 2 years ago
parent
commit
e1fb4ce34d

+ 3 - 2
GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs

@@ -430,11 +430,12 @@ namespace GFGGame
         /// <returns></returns>
         public bool GetClothingRenewRed(int suitId)
         {
-            int index = SuitFosterDataManager.Instance.GetSuitFosterData(suitId).maintainStep;
+            SuitFosterData suitFosterData = SuitFosterDataManager.Instance.GetSuitFosterData(suitId);
+            if (suitFosterData.makeNewState > 0) return false;
             List<SuitFosterCfg> fosterCfgs = SuitFosterCfgArray.Instance.GetCfgsBysuitId(suitId);
             SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
             SuitRenewCfg renewCfg = SuitRenewCfgArray.Instance.GetCfg(suitCfg.rarity);
-            if (index >= fosterCfgs.Count
+            if (suitFosterData.maintainStep >= fosterCfgs.Count
             && ItemDataManager.GetItemNum(renewCfg.costId) >= renewCfg.costNum
             && ItemDataManager.GetItemNum(renewCfg.materialsArr[0][0]) >= renewCfg.materialsArr[0][1])
             {

+ 3 - 2
GameClient/Assets/Game/HotUpdate/ServerProxy/SuitFosterProxy.cs

@@ -48,7 +48,7 @@ namespace ET
                 return maintainSuit.Error;
             }
             SuitFosterDataManager.Instance.SetMaintainSuit(suitId, maintainSuit.MaintainStep);
-
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             return ErrorCode.ERR_Success;
         }
 
@@ -71,7 +71,7 @@ namespace ET
                 return getMaintainSuitBonus.Error;
             }
             SuitFosterDataManager.Instance.SetMaintainBonusSteps(suitId, getMaintainSuitBonus.MaintainStep);
-
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             return ErrorCode.ERR_Success;
         }
 
@@ -94,6 +94,7 @@ namespace ET
                 return makeNewSuit.Error;
             }
             SuitFosterDataManager.Instance.SetMakeNewSuit(suitId, makeNewSuit.MakeNewState);
+            EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
             return ErrorCode.ERR_Success;
         }
     }

+ 10 - 1
GameClient/Assets/Game/HotUpdate/Views/ClothingFoster/ClothingView.cs

@@ -87,6 +87,7 @@ namespace GFGGame
             EventAgent.AddEventListener(ConstMessage.GET_MAINTAIN_SUIT_BONUS, OnListenerGetFosterReward);
             EventAgent.AddEventListener(ConstMessage.MAKE_NEW_SUIT, OnListenerRenew);
             EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, UpdateFosterList);
+            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
         }
         protected override void OnShown()
         {
@@ -109,7 +110,7 @@ namespace GFGGame
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("fzsj_bg");
 
             UpdateView();
-
+            UpdateRedDot();
             Timers.inst.AddUpdate(CheckGuide);
         }
 
@@ -127,6 +128,7 @@ namespace GFGGame
             EventAgent.RemoveEventListener(ConstMessage.GET_MAINTAIN_SUIT_BONUS, OnListenerGetFosterReward);
             EventAgent.RemoveEventListener(ConstMessage.MAKE_NEW_SUIT, OnListenerRenew);
             EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, UpdateFosterList);
+            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRedDot);
         }
         private void OnClickBtnBack()
         {
@@ -400,6 +402,13 @@ namespace GFGGame
             Debug.Log("换新奖励:" + ItemDataManager.GetItemNum(10370));
 
         }
+        private void UpdateRedDot()
+        {
+            RedDotController.Instance.SetComRedDot(_ui.m_btnTabFoster, RedDotDataManager.Instance.GetClothingFosterRed(_suitId));
+            RedDotController.Instance.SetComRedDot(_ui.m_btnTabRenew, RedDotDataManager.Instance.GetClothingRenewRed(_suitId));
+            RedDotController.Instance.SetComRedDot(_ui.m_btnRenew, RedDotDataManager.Instance.GetClothingRenewRed(_suitId));
+
+        }
         private void CheckGuide(object param)
         {
             if (GuideDataManager.IsGuideFinish(ConstGuideId.SUIT_LIST_VIEW) <= 0)