From b816510b6b189c280088dec693f8181489214a7c Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 12 十二月 2025 01:07:36 +0800
Subject: [PATCH] 0312 武将突破

---
 Main/System/HeroUI/HeroTrainWin.cs |   90 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 72 insertions(+), 18 deletions(-)

diff --git a/Main/System/HeroUI/HeroTrainWin.cs b/Main/System/HeroUI/HeroTrainWin.cs
index d14517c..7a974fc 100644
--- a/Main/System/HeroUI/HeroTrainWin.cs
+++ b/Main/System/HeroUI/HeroTrainWin.cs
@@ -6,7 +6,9 @@
 
 
 /// <summary>
-/// 姝﹀皢鍩瑰吇鐣岄潰
+/// 姝﹀皢鍩瑰吇鐣岄潰  
+/// functionOrder 0 浠h〃鍩瑰吇  1 浠h〃绐佺牬
+/// 鏆傛椂涓嶅仛涓�绾х晫闈㈠尯鍒嗭紝寰呮椂瑁呯晫闈㈠垎鏋愬鐞嗭紝鐩墠绐佺牬涔熷湪杩欎釜鐣岄潰
 /// </summary>
 public class HeroTrainWin : UIBase
 {
@@ -42,8 +44,8 @@
     [SerializeField] Text awakeLVText;
 
     //灞炴�у尯
-    [SerializeField] ScrollRect allAttrScroll;
-    [SerializeField] Button attrBtn;
+    [SerializeField] ScrollRect allAttrScroll;      //鍩瑰吇灞炴�� 婊氬姩鍖� 
+    [SerializeField] Button attrBtn;    //鍩瑰吇鍖虹殑鎷栨媺鎸夐挳
     [SerializeField] Image unfoldImg; //灞曞紑鏃舵寜閽殑鍥炬爣
     [SerializeField] Image foldImg; //鏀惰捣鏃舵寜閽殑鍥炬爣
     bool unfoldState = false;//鏄惁灞曞紑
@@ -93,6 +95,19 @@
     [SerializeField] Image redpointAwake;
     [SerializeField] Image redpointGift;
     [SerializeField] Image redpointLVUP;
+
+
+
+    #region 绐佺牬
+    // 鍖哄垎绐佺牬鍜屽煿鍏绘ā鍧�
+    [SerializeField] HeroLVBreakCell heroLVBreakCell;   //瀵瑰簲鍩瑰吇鐨� allAttrScroll  鍜� attrBtn
+
+    [SerializeField] GroupButtonEx trainMainButton; //鍩瑰吇鍏ュ彛鎸夐挳
+    [SerializeField] GroupButtonEx breakMainButton; //绐佺牬鍏ュ彛鎸夐挳
+    //鍏ュ彛浼孩鐐圭敤鍥剧墖浠f浛
+    [SerializeField] Image trainMainRedImg;
+    [SerializeField] Image breakMainRedImg;
+    #endregion
 
 
     Queue<HeroTrainAddAttrCell> lvupAttrQueue = new Queue<HeroTrainAddAttrCell>();
@@ -187,6 +202,20 @@
         {
             freezeTipGo.SetActive(!freezeTipGo.activeSelf);
         });
+
+        trainMainButton.AddListener(() =>
+        {
+            functionOrder = 0;
+            DisplayTrainOrBreak(hero);
+        });
+
+        breakMainButton.AddListener(() =>
+        {
+            functionOrder = 1;
+            DisplayTrainOrBreak(hero);
+            unfoldState = false;
+            RefreshFoldState();
+        });
     }
 
 
@@ -263,6 +292,8 @@
         RefreshAwake();
         RefreshFreeze();
         RefreshRedImg();
+        DisplayTrainOrBreak(hero);
+
 
         HeroUIManager.Instance.RemoveNewHero(hero.heroId);
         ForceRefreshLayout();
@@ -805,6 +836,9 @@
         redpointAwake.SetActive(false);
         redpointGift.SetActive(false);
         redpointLVUP.SetActive(false);
+        trainMainRedImg.SetActive(false);
+        breakMainRedImg.SetActive(false);
+
 
         var heroCnt = PackManager.Instance.GetItemCountByID(PackType.Hero, hero.heroId);
         var itemPack = PackManager.Instance.GetSinglePack(PackType.Item);
@@ -813,22 +847,10 @@
         if (heroCnt > 1)
         {
             redpointGift.SetActive(true);
+            trainMainRedImg.SetActive(true);
         }
 
-        // var maxBreakLV = HeroBreakConfig.GetMaxBreakLv(hero.heroId);
-        // if (hero.breakLevel < maxBreakLV)
-        // {
-        //     if (HeroUIManager.Instance.IsCanBreak(hero))
-        //     {
-        //         var breakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(hero.Quality, hero.breakLevel);
-        //         if (itemPack.GetCountById(breakConfig.UPCostItemList[0][0]) >= breakConfig.UPCostItemList[0][1])
-        //         {
-        //             redpointLVUP.SetActive(true);
-        //             return;
-        //         }
-        //         return;
-        //     }
-        // }
+
 
         if (!HeroUIManager.Instance.IsLVMax(hero))
         {
@@ -836,6 +858,7 @@
             if (itemPack.GetCountById(lvupConfig.UPCostItem[0]) >= lvupConfig.UPCostItem[1])
             {
                 redpointLVUP.SetActive(true);
+                trainMainRedImg.SetActive(true);
             }
         }
 
@@ -857,10 +880,41 @@
                 if (itemPack.GetCountById(config.UPCostItem[0]) >= config.UPCostItem[1])
                 {
                     redpointAwake.SetActive(true);
+                    trainMainRedImg.SetActive(true);
                 }
             }
         }
 
-     
+        if (HeroUIManager.Instance.IsCanBreak(hero))
+        {
+            redpointLVUP.SetActive(true);
+            breakMainRedImg.SetActive(true);
+        }
+
     }
+    
+    #region 绐佺牬鍔熻兘
+
+    void DisplayTrainOrBreak(HeroInfo hero)
+    {
+        //heroLVBreakCell;   //瀵瑰簲鍩瑰吇鐨� allAttrScroll  鍜� attrBtn
+        if (functionOrder == 0)
+        {
+            heroLVBreakCell.SetActive(false);
+            allAttrScroll.SetActive(true);
+            attrBtn.SetActive(true);
+            trainMainButton.SelectBtn();
+        }
+        else
+        {
+            heroLVBreakCell.SetActive(true);
+            allAttrScroll.SetActive(false);
+            attrBtn.SetActive(false);
+
+            heroLVBreakCell.Display(hero);
+            breakMainButton.SelectBtn();
+        }
+    }
+
+    #endregion
 }
\ No newline at end of file

--
Gitblit v1.8.0