From 8a2d52c24c60af2bf6e3968e8dde9ddcb5ccffba Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 12 十一月 2025 17:17:29 +0800
Subject: [PATCH] 0312 战报约定第一个包是B424,先发过来的过滤报错通知

---
 Main/Utility/UIHelper.cs                                                                    |    2 ++
 Main/Core/NetworkPackage/DTCFile/ServerPack/HB4_FightDefine/DTCB430_tagSCTurnFightReport.cs |   31 +++++++++++++++++++++++++++----
 2 files changed, 29 insertions(+), 4 deletions(-)

diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HB4_FightDefine/DTCB430_tagSCTurnFightReport.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HB4_FightDefine/DTCB430_tagSCTurnFightReport.cs
index 74b63df..58bf81f 100644
--- a/Main/Core/NetworkPackage/DTCFile/ServerPack/HB4_FightDefine/DTCB430_tagSCTurnFightReport.cs
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HB4_FightDefine/DTCB430_tagSCTurnFightReport.cs
@@ -10,7 +10,8 @@
 {
 
     static byte[] vCmdBytes = new byte[2];
-
+    bool canAddPack = false;
+        
     public override void Done(GameNetPackBasic vNetPack)
     {
         base.Done(vNetPack);
@@ -18,8 +19,10 @@
 
         // 鎴樻姤缁撴灉
         string guid = UIHelper.ServerStringTrim(vNetData.GUID);
+        canAddPack = false;
 
         //绾﹀畾 B430 鍐呭锛堝皬鍖�1闀垮害WORD + 鍖�1 + 灏忓寘2闀垮害WORD + 鍖�2锛�
+        //绾﹀畾绗竴涓寘鏄疊424锛屽厛鍙戣繃鏉ョ殑杩囨护鎶ラ敊閫氱煡
         try
         {
             int vReadIndex = 0;
@@ -60,8 +63,11 @@
                     GameNetPackBasic npk = PackageRegedit.TransPack(ServerType.B430, cmd, vPackBytes);
                     if (npk != null)
                     {
-                        vPackList.Add(npk);
-                        BattleManager.Instance.PushPackUID(guid, npk.packUID);
+                        if (!FilterBeforeB424(npk))
+                        {
+                            vPackList.Add(npk);
+                            BattleManager.Instance.PushPackUID(guid, npk.packUID);
+                        }
                         isRegist = true;
                     }
                 }
@@ -83,7 +89,7 @@
             {
                 BattleManager.Instance.PushPackage(guid, vPackList[i]);
             }
-
+            canAddPack = false;
             BattleManager.Instance.DistributeNextReportPackage(guid);
         }
         catch (Exception e)
@@ -92,6 +98,23 @@
         }
     }
 
+    //绾﹀畾绗竴涓寘鏄疊424锛屽厛鍙戣繃鏉ョ殑杩囨护鎶ラ敊閫氱煡
+    bool FilterBeforeB424(GameNetPackBasic npk)
+    {
+        if (npk is HB424_tagSCTurnFightInit)
+        {
+            canAddPack = true;
+            return false;
+        }
+
+        if (!canAddPack)
+        {
+            Debug.LogErrorFormat("鏈嶅姟绔渶澶勭悊 DTCB430_tagSCTurnFightReport 杩囨护鎺塀424涔嬪墠鐨勫寘:" + npk.ToString());
+            return true;
+        }
+        return false;
+    }
+
 
     protected List<GameNetPackBasic> AnalysisPackQueueAndDistribute(string guid, List<GameNetPackBasic> vPackList)
     {
diff --git a/Main/Utility/UIHelper.cs b/Main/Utility/UIHelper.cs
index 63968b8..2cd0ea7 100644
--- a/Main/Utility/UIHelper.cs
+++ b/Main/Utility/UIHelper.cs
@@ -66,6 +66,8 @@
 
 
     #region UI閫氱敤
+
+    //榛樿璐у竵鍥剧墖鐢ㄩ珮娓呯殑锛屽瘜鏂囨湰鐨勫彲浠ョ敤灏忓浘鏍囧埄浜庢帓鐗堟樉绀�
     public static void SetIconWithMoneyType(this Image _image, int moneyType)
     {
         if (_image == null) return;

--
Gitblit v1.8.0