Browse Source

修改大突破可以不打心魔

lzx 1 week ago
parent
commit
d923e7ccac

+ 12 - 5
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroBreakthroughPanel.cs

@@ -428,8 +428,11 @@ namespace Fort23.Mono
                 using (CTaskAwaitBuffer<BreakthroughItemWidget> cTaskAwaitBuffer =
                        new CTaskAwaitBuffer<BreakthroughItemWidget>())
                 {
+                    int dujieItemCount = heroPowerUpConfig.DujieItemIDs == null
+                        ? 0
+                        : heroPowerUpConfig.DujieItemIDs.Length;
                     for (int i = 0;
-                         i < 1 + heroPowerUpConfig.DujieMustItemIDs.Length + heroPowerUpConfig.DujieItemIDs.Length;
+                         i < 1 + heroPowerUpConfig.DujieMustItemIDs.Length + dujieItemCount;
                          i++)
                     {
                         cTaskAwaitBuffer.AddTask(
@@ -448,7 +451,7 @@ namespace Fort23.Mono
                     }
 
                     //可选道具
-                    for (var i = 0; i < heroPowerUpConfig.DujieItemIDs.Length; i++)
+                    for (var i = 0; i < heroPowerUpConfig.DujieItemIDs?.Length; i++)
                     {
                         breakthroughItemWidgets[i + heroPowerUpConfig.DujieMustItemIDs.Length + 1]
                             .CustomInit(2, heroPowerUpConfig.DujieItemIDs[i], false);
@@ -545,7 +548,11 @@ namespace Fort23.Mono
             else
             {
                 //提示需要什么道具
-                string tips = "需要 破除心魔 ";
+                string tips = "需要";
+                if (heroPowerUpConfig.DujieLevelbattleID != -1 && !hero.heroData.isCombat)
+                {
+                    tips +=  " 破除心魔";
+                }
                 foreach (var dujieMustItemID in hero.powerUpConfig.DujieMustItemIDs)
                 {
                     ItemConfig itemConfig = ConfigComponent.Instance.Get<ItemConfig>(dujieMustItemID);
@@ -705,7 +712,7 @@ namespace Fort23.Mono
                    new CTaskAwaitBuffer<BreakthroughItemWidget>())
             {
                 for (int i = 0;
-                     i < 1 + heroPowerUpConfig.DujieMustItemIDs.Length + heroPowerUpConfig.DujieItemIDs.Length;
+                     i < 1 + heroPowerUpConfig.DujieMustItemIDs.Length + heroPowerUpConfig.DujieItemIDs?.Length;
                      i++)
                 {
                     cTaskAwaitBuffer.AddTask(
@@ -724,7 +731,7 @@ namespace Fort23.Mono
                 }
 
                 //可选道具
-                for (var i = 0; i < heroPowerUpConfig.DujieItemIDs.Length; i++)
+                for (var i = 0; i < heroPowerUpConfig.DujieItemIDs?.Length; i++)
                 {
                     breakthroughItemWidgets[i + heroPowerUpConfig.DujieMustItemIDs.Length + 1]
                         .CustomInit(2, heroPowerUpConfig.DujieItemIDs[i], false);