From 34179ffa10e510ba71522cb2bd1fd978b7fcbbe1 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期四, 16 七月 2026 11:26:37 +0800
Subject: [PATCH] Revert "634 H5适配 获得英雄展示动态立绘的时机放到OnOpen"

---
 Main/System/GuildAtkDefBat/GuildAtkDefBatManager.cs |   56 +++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 39 insertions(+), 17 deletions(-)

diff --git a/Main/System/GuildAtkDefBat/GuildAtkDefBatManager.cs b/Main/System/GuildAtkDefBat/GuildAtkDefBatManager.cs
index 5d68c4b..2ff812e 100644
--- a/Main/System/GuildAtkDefBat/GuildAtkDefBatManager.cs
+++ b/Main/System/GuildAtkDefBat/GuildAtkDefBatManager.cs
@@ -49,6 +49,7 @@
     public override void Init()
     {
         DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin += OnBeforePlayerDataInitializeEventOnRelogin;
+        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnReconnect += OnBeforePlayerDataInitializeEventOnReconnect;
         GuildManager.Instance.EnterOrQuitGuildEvent += OnEnterOrQuitGuildEvent;
         StoreModel.Instance.RefreshBuyShopLimitEvent += OnRefreshShopLimit;
         ParseConfig();
@@ -57,18 +58,25 @@
     public override void Release()
     {
         DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin -= OnBeforePlayerDataInitializeEventOnRelogin;
+        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnReconnect -= OnBeforePlayerDataInitializeEventOnReconnect;
         GuildManager.Instance.EnterOrQuitGuildEvent -= OnEnterOrQuitGuildEvent;
         StoreModel.Instance.RefreshBuyShopLimitEvent -= OnRefreshShopLimit;
+    }
+
+    private void OnBeforePlayerDataInitializeEventOnReconnect()
+    {
+        atkDefBatLogs.Clear();
+    }
+
+    private void OnBeforePlayerDataInitializeEventOnRelogin()
+    {
+        hasClosedMainGuildAtkDefBatTip = false;
+        ResetBattleData();
     }
 
     private void OnRefreshShopLimit()
     {
         UpdateRedpoint();
-    }
-
-    private void OnBeforePlayerDataInitializeEventOnRelogin()
-    {
-        ResetBattleData();
     }
 
     private void OnEnterOrQuitGuildEvent(bool isEnter)
@@ -222,7 +230,6 @@
         targetInfo.ServerID = sourceData.ServerID;
         targetInfo.EmblemID = sourceData.EmblemID;
         targetInfo.EmblemWord = UIHelper.ServerStringTrim(sourceData.EmblemWord);
-        targetInfo.IsDismiss = sourceData.IsDismiss;
         targetInfo.TotalStar = sourceData.TotalStar;
         targetInfo.OverState = sourceData.OverState;
         targetInfo.BatMemCount = sourceData.BatMemCount;
@@ -390,6 +397,22 @@
         return MyFamilyMembers.ContainsKey(PlayerDatas.Instance.PlayerId);
     }
 
+    private bool hasClosedMainGuildAtkDefBatTip;
+
+    public bool ShouldShowMainGuildAtkDefBatTip()
+    {
+        if (hasClosedMainGuildAtkDefBatTip)
+            return false;
+        if (!IsOpen())
+            return false;
+        return BatState == 3 && HasFamilyJoinEligibility() && HasMyJoinEligibility();
+    }
+
+    public void ClearMainGuildAtkDefBatTip()
+    {
+        hasClosedMainGuildAtkDefBatTip = true;
+    }
+
     /// <summary>
     /// 鑾峰彇鏀婚槻鎴樼殑褰撳墠鏄剧ず鐘舵�佹爣璇�
     /// </summary>
@@ -406,8 +429,8 @@
         if (BatState == 1 && MyFamilyInfo != null)
         {
             int overState = MyFamilyInfo.OverState;
-            if (overState == 1 || overState == 3) return 4;
-            if (overState == 2 || overState == 4) return 5;
+            if (overState == 1) return 4;
+            if (overState == 2) return 5;
         }
 
         return 1;
@@ -428,7 +451,7 @@
 
     /// <summary>
     /// 鑾峰彇宸辨柟鍏細鎺掑簭鍚庣殑鍙傛垬鎴愬憳鍒楄〃
-    /// 鎺掑簭瑙勫垯锛歋tar闄嶅簭 鈫� BatCnt鍗囧簭 鈫� PlayerID鍗囧簭
+    /// 杩囨护鏈垬鏂楁垚鍛橈紝鎺掑簭瑙勫垯锛歋tar闄嶅簭 鈫� BatCnt鍗囧簭 鈫� PlayerID鍗囧簭
     /// </summary>
     public List<HA525_tagSCFamilyAtkDefBatInfo.tagSCFamilyAtkDefBatMem> GetSortedFamilyMembers()
     {
@@ -436,7 +459,7 @@
         if (members == null || members.Count <= 0)
             return new List<HA525_tagSCFamilyAtkDefBatInfo.tagSCFamilyAtkDefBatMem>();
 
-        var list = members.Values.ToList();
+        var list = members.Values.Where(member => member.BatCnt > 0).ToList();
         list.Sort((a, b) =>
         {
             if (b.Star != a.Star)
@@ -866,8 +889,7 @@
     /// <summary>
     /// 鑾峰彇鎴戠殑鍓╀綑寮�鍚鏁�
     /// 浠呭湪浼戞垬鏈�(BatState==1)鍙紑鍚�
-    /// 瀵规墜鍏細鏈В鏁�: 鏈夊弬涓庢垬鏂�(BatCnt>0)鐨勭帺瀹跺彲寮�鍚�1娆�
-    /// 瀵规墜鍏細宸茶В鏁�: 鎵�鏈夊弬璧涙垚鍛樺潎鍙紑鍚�1娆�
+    /// 鍙傛垬涓斿凡鎴樻枟鎴愬憳鍙紑鍚�1娆�
     /// 姣忎汉鏈�澶�1娆�
     /// </summary>
     public int GetMyOpenRemainCount()
@@ -883,15 +905,15 @@
         if (!MyFamilyMembers.TryGetValue(myPlayerId, out var myMem))
             return 0;
 
+        // 鏈弬涓庢垬鏂椾笉鑳藉紑鍚�
+        if (myMem.BatCnt <= 0)
+            return 0;
+
         // 宸插紑鍚繃鍒欎笉鑳藉啀娆″紑鍚�
         if (myMem.GridNum > 0)
             return 0;
 
-        // 瀵规墜鍏細宸茶В鏁�: 鎵�鏈夊弬璧涙垚鍛樺潎鍙紑鍚�
-        if (EnemyFamilyInfo != null && EnemyFamilyInfo.IsDismiss == 1)
-            return 1;
-
-        // 瀵规墜鍏細鏈В鏁�: 鍙傛垬鎴愬憳鍧囧彲寮�鍚�1娆★紙宸插紑鍚殑琚� GridNum 杩囨护锛�
+        // 鍙傛垬涓斿凡鎴樻枟鎴愬憳鍙紑鍚�1娆★紙宸插紑鍚殑琚� GridNum 杩囨护锛�
         return 1;
     }
 

--
Gitblit v1.8.0