Browse Source

服装养护红点

zhaoyang 2 years ago
parent
commit
eec4ce1abc

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

@@ -274,8 +274,9 @@ namespace GFGGame
         public bool GetClothingFosterRed(int suitId)
         {
             int index = SuitFosterDataManager.Instance.GetSuitFosterData(suitId).maintainStep;
-            SuitFosterCfg fosterCfg = SuitFosterCfgArray.Instance.GetCfgsBysuitId(suitId)[index];
-
+            List<SuitFosterCfg> fosterCfgs = SuitFosterCfgArray.Instance.GetCfgsBysuitId(suitId);
+            if (index >= fosterCfgs.Count) return false;
+            SuitFosterCfg fosterCfg = fosterCfgs[index];
             if (fosterCfg.materialsArr.Length == 0) return false;
             int itemHas = ItemDataManager.GetItemNum(fosterCfg.materialsArr[0][0]);
             int itemNeed = fosterCfg.materialsArr[0][1];

+ 7 - 6
GameClient/Assets/Game/HotUpdate/Views/ClothingFoster/ClothingView.cs

@@ -345,13 +345,14 @@ namespace GFGGame
             _ui.m_txtRenewTips.text = string.Format("完成{0}阶段", SuitFosterDataManager.Instance.stepNames[cfg.renewOpenLv - 1]);
             _ui.m_listRenewMaterial.numItems = renewCfg.materialsArr.Length;
 
-            _canRenew = true;
-            // UI_ComCostCurrency comConsumeCurrency = UI_ComCostCurrency.Proxy(_ui.m_comRenewCost);
-            int has = ItemDataManager.GetItemNum(renewCfg.costId);
-            int need = renewCfg.costNum;
-            // comConsumeCurrency.m_txtNeed.text = StringUtil.GetColorText(need.ToString(), has >= need ? "#FFF8EA" : "#C9F1A5");
+            int costHas = ItemDataManager.GetItemNum(renewCfg.costId);
+            int costNeed = renewCfg.costNum;
+
             ItemUtil.SetItemNeedNum(_ui.m_comRenewCost, renewCfg.costId, renewCfg.costNum);
-            if (_canRenew && has < need) _canRenew = false;
+            int itemHas = ItemDataManager.GetItemNum(renewCfg.materialsArr[0][0]);
+            int itemNeed = renewCfg.materialsArr[0][1];
+
+            _canRenew = costHas >= costNeed && itemHas >= itemNeed;
             UI_ComCostCurrency.ProxyEnd();
         }
         private void UpdateRenewFinish()