From 35d98e9c630fd4408561c8c54b4c09193bb9ce9e Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 20 三月 2026 14:57:32 +0800
Subject: [PATCH] 0312 修改服务端补主线进度通知

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py
index 517a882..21cedac 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/TurnAttack.py
@@ -169,6 +169,17 @@
             deadCnt += 1
         return deadCnt
     
+    def GetBeFrozenCnt(self):
+        ## 获取本阵容累计被冰冻次数
+        totalCnt = 0
+        batObjMgr = BattleObj.GetBatObjMgr()
+        for objID in self._batHeroObjIDList:
+            batObj = batObjMgr.getBatObj(objID)
+            if not batObj:
+                continue
+            totalCnt += batObj.GetBeFrozenCnt()
+        return totalCnt
+    
 class BatFaction():
     ## 战斗阵营
     
@@ -1472,6 +1483,12 @@
     curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
     reqType = clientData.ReqType
     reqValue = clientData.ReqValue
+
+        
+    # 开始时补通知一次当前关卡进度, 原因:前端播放战报关卡进度吞包刷新问题
+    curPlayer.SetExAttr1(PlayerControl.GetMainLevelPassValue(curPlayer), False, False) # 不通知GameServer
+    PlayerControl.SetMainLevelNowValue(curPlayer, PlayerControl.GetMainLevelNowValue(curPlayer))
+    
     
     if reqType == 0:
         __doExitMainFight(curPlayer)
@@ -1594,6 +1611,7 @@
     if not lineupMainInfo:
         GameWorld.DebugLogEx("没有设置主阵容!", playerID)
         return
+
     
     strongerLV = levelIpyData.GetNPCLV()
     difficulty = levelIpyData.GetDifficulty()

--
Gitblit v1.8.0