From 649b36b642546062ab5102b6225b9f78ea72309d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 04 十一月 2025 18:11:02 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(优化完整战报仅包含战斗相关封包,结算奖励相关如物品,经验,货币,挑战次数等统一放在战报数据B430后同步)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py
index d64b5af..542529b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_Zhanchui.py
@@ -26,7 +26,7 @@
         GameWorld.DebugLog("已过关的不能不重复挑战! mapID=%s,funcLineID=%s" % (mapID, funcLineID))
         return
     
-    return True
+    return True, funcLineID
 
 def OnTurnFightOver(curPlayer, turnFight, mapID, funcLineID, overMsg):
     ## 回合战斗结束
@@ -45,13 +45,27 @@
     
     itemList = FBCommon.GetPassAwardList(mapID, funcLineID)
     GameWorld.DebugLog("过关奖励: mapID=%s,funcLineID=%s,itemList=%s" % (mapID, funcLineID, itemList))
-    # 首通不扣次数
-    FBCommon.SetFBPass(curPlayer, mapID, funcLineID)
-    ItemControler.GivePlayerItemOrMail(curPlayer, itemList, event=["Zhanchui", False, {}], isNotifyAward=False)
     overMsg.update({FBCommon.Over_itemInfo:FBCommon.GetJsonItemList(itemList)})
     
+    turnFight.awardData = [itemList]
     return
 
+def OnTurnFightAward(curPlayer, turnFight, mapID, funcLineID, awardData):
+    ## 回合战斗结算奖励
+    if not curPlayer:
+        return
+    
+    if not awardData:
+        return
+    
+    itemList = awardData[0]
+    
+    # 首通不扣次数
+    FBCommon.AddEnterFBCount(curPlayer, mapID, isFree=True)
+    FBCommon.SetFBPass(curPlayer, mapID, funcLineID)
+    ItemControler.GivePlayerItemOrMail(curPlayer, itemList, event=["Zhanchui", False, {}], isNotifyAward=False)
+    return
+    
 def OnPlayerFBSweepAsk(curPlayer, mapID, lineID, sweepCnt, dataEx):
     ## 可否扫荡
     

--
Gitblit v1.8.0