From f4a702e212d1853735f8dae399da69d23bfa510e Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 26 三月 2026 18:16:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into h5version

---
 Main/System/Main/HomeWin.cs |   67 +++++++++++++++++++++++++++------
 1 files changed, 55 insertions(+), 12 deletions(-)

diff --git a/Main/System/Main/HomeWin.cs b/Main/System/Main/HomeWin.cs
index 0cbe97f..831a9d6 100644
--- a/Main/System/Main/HomeWin.cs
+++ b/Main/System/Main/HomeWin.cs
@@ -67,8 +67,12 @@
     [SerializeField] Button osMainLevelBtn;
     [SerializeField] Button osHeroCallBtn;
     [SerializeField] Button osGalaBtn;
+    [SerializeField] Button osHeroTrainBtn;
+    [SerializeField] Button osBeautyMMBtn;
     [SerializeField] TimingGiftCell timingGiftCell;
+    [SerializeField] Button osMinggeBtn;
     [SerializeField] TimeRushCell timeRushCell;
+    [SerializeField] HeroDebutCell heroDebutCell;
 
     //鍧愰獞
     [SerializeField] Image horseBGImg;
@@ -211,7 +215,18 @@
         {
             UIManager.Instance.OpenWindowAsync<OSGalaBaseWin>().Forget();
         });
-
+        osBeautyMMBtn.AddListener(() =>
+        {
+            UIManager.Instance.OpenWindow<OSBeautyMMBaseWin>();
+        });
+        osHeroTrainBtn.AddListener(() =>
+        {
+            UIManager.Instance.OpenWindow<OSHeroTrainBaseWin>();
+        });
+        osMinggeBtn.AddListener(() =>
+        {
+            UIManager.Instance.OpenWindow<OSMinggeBaseWin>();
+        });
         DailySpecialsBtns.AddListener(() =>
         {
             UIManager.Instance.OpenWindowAsync<DailySpecialsBaseWin>().Forget();
@@ -233,7 +248,7 @@
         DisplayLevel();
         DisplayRestState();
 
-        funcColBtn.SetActive(FuncOpen.Instance.IsFuncOpen(GeneralDefine.mainRightFuncOpenFuncID));
+        funcColBtn.SetActive(FuncOpen.Instance.IsFuncOpen(GeneralDefine.mainRightFuncOpenFuncID) || SmallFuncManager.Instance.IsReviewOpen());
         officialTip.SetActive(OfficialRankManager.Instance.CanOfficialLVUP());
 
         DisplayHorse();
@@ -272,6 +287,7 @@
         UIManager.Instance.OnOpenWindow += OnOpenWindow;
         TimingGiftManager.Instance.OnShowGiftIdListAddEvent += OnShowGiftIdListAddEvent;
         OpenServerActivityCenter.Instance.openServerActivityStateChange += OpenServerActivityStateChange;
+        OperationTimeHepler.Instance.operationTimeUpdateEvent += OnOperationTimeUpdateEvent;
         TryPlayAutoFightBoss();
         Display();
         DisplayFirstChargeBtn();
@@ -279,7 +295,7 @@
         timingGiftCell.InitUI().Forget();
 
         DisplayTimeRush();
-
+        DisplayHeroDebut();
         DelayPlayMusic().Forget();
 
     }
@@ -309,13 +325,24 @@
         UIManager.Instance.OnOpenWindow -= OnOpenWindow;
         TimingGiftManager.Instance.OnShowGiftIdListAddEvent -= OnShowGiftIdListAddEvent;
         OpenServerActivityCenter.Instance.openServerActivityStateChange -= OpenServerActivityStateChange;
+        OperationTimeHepler.Instance.operationTimeUpdateEvent -= OnOperationTimeUpdateEvent;
         //  鍏抽棴鐨勬椂鍊欐妸鎴樻枟鐣岄潰涔熺粰鍏充簡 铏界劧鏄湪澶栭潰寮�鐨�
         UIManager.Instance.CloseWindow<BattleWin>();
+    }
+
+    private void OnOperationTimeUpdateEvent(OperationType type)
+    {
+        if (type == OperationType.HeroDebut)
+        {
+            DisplayHeroDebut();
+        }
+
     }
 
     private void OpenServerActivityStateChange()
     {
         DisplayTimeRush();
+        DisplayHeroDebut();
     }
 
     private void OnShowGiftIdListAddEvent()
@@ -349,8 +376,7 @@
 
     private void OnClickChatBtn()
     {
-        if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Chat, true))
-            return;
+
 
         //transFastChat.SetActive(true);
         // transChatInfo.SetActive(false);
@@ -359,7 +385,7 @@
         bool hasLastTalkData = ChatManager.Instance.TryGetLastTalkData(out ChatChannel type, out TalkData data);
         if (!hasLastTalkData)
         {
-            ChatManager.Instance.nowChatTab = ChatTab.World;
+            ChatManager.Instance.nowChatTab = ChatChannel.World;
             ChatManager.Instance.nowChatChannel = ChatChannel.World;
         }
         else
@@ -368,15 +394,15 @@
             {
                 case ChatChannel.World:
                 default:
-                    ChatManager.Instance.nowChatTab = ChatTab.World;
+                    ChatManager.Instance.nowChatTab = ChatChannel.World;
                     ChatManager.Instance.nowChatChannel = ChatChannel.World;
                     break;
                 case ChatChannel.Guild:
-                    ChatManager.Instance.nowChatTab = ChatTab.Guild;
+                    ChatManager.Instance.nowChatTab = ChatChannel.Guild;
                     ChatManager.Instance.nowChatChannel = ChatChannel.Guild;
                     break;
                 case ChatChannel.CrossServer:
-                    ChatManager.Instance.nowChatTab = ChatTab.CrossServer;
+                    ChatManager.Instance.nowChatTab = ChatChannel.CrossServer;
                     ChatManager.Instance.nowChatChannel = ChatChannel.CrossServer;
                     break;
             }
@@ -439,7 +465,7 @@
         }
     }
 
-    private void OnChatTabChangeEvent(ChatTab tab)
+    private void OnChatTabChangeEvent(ChatChannel tab)
     {
         //UpdateChat(tab);
     }
@@ -678,7 +704,7 @@
     private void OnCloseWindow(UIBase closeUI)
     {
         //鍏朵粬姝﹀皢鍔熻兘浜х敓鏁版嵁鍙樺寲锛岄渶瑕佸埛鏂版灏嗗垪琛�
-        if (closeUI is HeroTrainWin)
+        if (closeUI is HeroTrainBaseWin)
         {
             DisplayCard(TeamManager.Instance.GetMainTeamID());
         }
@@ -814,7 +840,8 @@
             DisplayHorse();
         }
         else if (funcId == (int)FuncOpenEnum.OSMainLevl || funcId == (int)FuncOpenEnum.OSHeroCall
-        || funcId == (int)FuncOpenEnum.OSGala)
+        || funcId == (int)FuncOpenEnum.OSGala|| funcId == (int)FuncOpenEnum.OSHeroTrain
+        || funcId == (int)FuncOpenEnum.OSBeautyMM  || funcId == (int)FuncOpenEnum.OSMingge)
         {
             DisplayOSActivity();
         }
@@ -829,6 +856,10 @@
         else if (funcId == (int)FuncOpenEnum.TimeRush)
         {
             DisplayTimeRush();
+        }
+        else if (funcId == (int)FuncOpenEnum.HeroDebut)
+        {
+            DisplayHeroDebut();
         }
     }
 
@@ -877,6 +908,9 @@
     {
         osMainLevelBtn.SetActive(OSActivityManager.Instance.IsOpened(3));
         osHeroCallBtn.SetActive(OSActivityManager.Instance.IsOpened(4));
+        osHeroTrainBtn.SetActive(OSActivityManager.Instance.IsOpened(7));
+        osBeautyMMBtn.SetActive(OSActivityManager.Instance.IsOpened(8));
+        osMinggeBtn.SetActive(OSActivityManager.Instance.IsOpened(9));
         osGalaBtn.SetActive(OSActivityManager.Instance.IsOpenedOSGala());
     }
 
@@ -894,6 +928,15 @@
             return;
         timeRushCell.InitUI();
     }
+
+    void DisplayHeroDebut()
+    {
+        bool isOpen = HeroDebutManager.Instance.IsHeroDebutOpen();
+        heroDebutCell.SetActive(isOpen);
+        if (!isOpen)
+            return;
+        heroDebutCell.Display();
+    }
 }
 
 

--
Gitblit v1.8.0