From ed6044faa5f5426d71ae1c86b479998ab7d831dc Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 06 一月 2026 20:02:20 +0800
Subject: [PATCH] 143 演武场-客户端 同步B424封包,演武场战场界面的战力数据从战场数据中直接获取

---
 Main/Core/NetworkPackage/ServerPack/HB4_FightDefine/HB424_tagSCTurnFightInit.cs |    4 ++++
 Main/System/Team/TeamHero.Properties.cs                                         |    3 ++-
 Main/System/Team/TeamHero.cs                                                    |    1 +
 Main/System/Battle/ArenaBattleWin.cs                                            |   20 ++++++++++++++++++--
 4 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/Main/Core/NetworkPackage/ServerPack/HB4_FightDefine/HB424_tagSCTurnFightInit.cs b/Main/Core/NetworkPackage/ServerPack/HB4_FightDefine/HB424_tagSCTurnFightInit.cs
index be022dd..6a46ba6 100644
--- a/Main/Core/NetworkPackage/ServerPack/HB4_FightDefine/HB424_tagSCTurnFightInit.cs
+++ b/Main/Core/NetworkPackage/ServerPack/HB4_FightDefine/HB424_tagSCTurnFightInit.cs
@@ -49,6 +49,8 @@
                     TransBytes (out FactionList[i].LineupList[j].ObjList[k].LV, vBytes, NetDataType.WORD);
                     TransBytes (out FactionList[i].LineupList[j].ObjList[k].PosNum, vBytes, NetDataType.BYTE);
                     TransBytes (out FactionList[i].LineupList[j].ObjList[k].AngreXP, vBytes, NetDataType.WORD);
+                    TransBytes (out FactionList[i].LineupList[j].ObjList[k].FightPower, vBytes, NetDataType.DWORD);
+                    TransBytes (out FactionList[i].LineupList[j].ObjList[k].FightPowerEx, vBytes, NetDataType.DWORD);
                 }
             }
         }
@@ -72,6 +74,8 @@
         public ushort LV;        // 绛夌骇锛岀帺瀹剁殑姝﹀皢绛夌骇鎴朜PC鎴愰暱绛夌骇锛岀瓑绾ф樉绀轰互璇ュ�间负鍑�
         public byte PosNum;        // 鍦ㄦ湰闃靛涓殑绔欎綅锛屼粠1寮�濮嬶紝闈炰富鎴樻枟姝﹀皢涓�0锛屽绾㈤
         public ushort AngreXP;        // 褰撳墠鎬掓皵鍊�
+        public uint FightPower;        // 鎴樺姏锛屾眰浣欎嚎閮ㄥ垎
+        public uint FightPowerEx;        // 鎴樺姏锛屾暣闄や嚎閮ㄥ垎
     }
 
     public class tagSCTurnFightLineup {
diff --git a/Main/System/Battle/ArenaBattleWin.cs b/Main/System/Battle/ArenaBattleWin.cs
index 11a01c6..9b0f8b3 100644
--- a/Main/System/Battle/ArenaBattleWin.cs
+++ b/Main/System/Battle/ArenaBattleWin.cs
@@ -172,6 +172,22 @@
 
     }
 
+    private long GetFightPonit(List<BattleObject> Team)
+    {
+        if (Team.IsNullOrEmpty())
+        {
+            return 0;
+        }
+        long res = 0;
+        foreach (var obj in Team)
+        {
+            if (obj.teamHero == null)
+                continue;
+            res += obj.teamHero.fightPower;
+        }
+        return res;
+    }
+
     private void DisplayPlayerInfo()
     {
         if (battleField == null)
@@ -186,7 +202,7 @@
 
         txtEnemyLV.text = Language.Get("Arena22", info.Lv);
         txtEnemyName.text = UIHelper.ServerStringTrim(info.PlayerName);
-        txtEnemyFightPonit.text = UIHelper.ReplaceLargeArtNum(info.FightPower);
+        txtEnemyFightPonit.text = UIHelper.ReplaceLargeArtNum(GetFightPonit(enemyTeam));
         enemyAvatarCell.InitUI(AvatarHelper.GetAvatarModel((int)info.PlayerID, (int)info.Face, (int)info.FacePic));
         enemyAvatarCell.SetListener(() =>
         {
@@ -197,7 +213,7 @@
 
         txtMyLV.text = Language.Get("Arena22", PlayerDatas.Instance.baseData.LV);
         txtMyName.text = PlayerDatas.Instance.baseData.PlayerName;
-        long myFightPower = ArenaManager.Instance.GetMyFightPower();
+        long myFightPower = GetFightPonit(myTeam);
         txtMyFightPonit.text = UIHelper.ReplaceLargeArtNum(myFightPower);
         myAvatarCell.InitUI(AvatarHelper.GetAvatarModel((int)PlayerDatas.Instance.baseData.PlayerID, PlayerDatas.Instance.baseData.face, PlayerDatas.Instance.baseData.facePic));
         team = GetTeamHeroList(myTeam);
diff --git a/Main/System/Team/TeamHero.Properties.cs b/Main/System/Team/TeamHero.Properties.cs
index acf7871..a8693bf 100644
--- a/Main/System/Team/TeamHero.Properties.cs
+++ b/Main/System/Team/TeamHero.Properties.cs
@@ -11,5 +11,6 @@
     //  鏈�澶ц閲�
     public long maxHp;
 
-    
+    //  鎴樺姏
+    public long fightPower;
 }
\ No newline at end of file
diff --git a/Main/System/Team/TeamHero.cs b/Main/System/Team/TeamHero.cs
index 3d94074..4217979 100644
--- a/Main/System/Team/TeamHero.cs
+++ b/Main/System/Team/TeamHero.cs
@@ -85,6 +85,7 @@
 
         curHp = (long)fightObj.HPEx * (long)Constants.ExpPointValue + (long)fightObj.HP;
         maxHp = (long)fightObj.MaxHPEx * (long)Constants.ExpPointValue + (long)fightObj.MaxHP;
+        fightPower = (long)fightObj.FightPowerEx * (long)Constants.ExpPointValue + (long)fightObj.FightPower;
         rage = (int)fightObj.AngreXP;
 
         positionNum = fightObj.PosNum - 1;

--
Gitblit v1.8.0