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 | 24 +++++++++++++++++++-----
1 files changed, 19 insertions(+), 5 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 151f780..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,19 +45,33 @@
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):
## 可否扫荡
return True
-def OnPlayerFBSweepResult(curPlayer, mapID, lineID, sweepCnt, dataEx):
+def OnPlayerFBSweepResult(curPlayer, mapID, lineID, sweepCnt, dataEx, askRet):
## 扫荡结果,次数消耗已在外层处理扣除
itemList = FBCommon.GetSweepAwardList(mapID, lineID, sweepCnt)
--
Gitblit v1.8.0