From fbf3fe5655d97c67db3bf07706ab5af232dcc9a5 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 18 九月 2025 19:17:48 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(甘夫人技能;增加连击、追击增伤减伤属性;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py |  106 ++++++++++++----------------------------------------
 1 files changed, 25 insertions(+), 81 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
index f1661c3..5d3fe75 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
@@ -23,7 +23,6 @@
 import IpyGameDataPY
 import PlayerSuccess
 import ReadChConfig
-import PlayerAssist
 import ShareDefine
 import PyGameData
 import FBCommon
@@ -541,7 +540,6 @@
     #成长NPC所需数据初始化
     InitFBNPCStrengthenData(curPlayer, gameMap)
     
-    PlayerAssist.OnPlayerEnterAssistFB(curPlayer, gameMapID, reqFuncLineID)
     DoEnterFB(curPlayer, tick)
     
     RecordFirstEnterMap(curPlayer, gameMapID)
@@ -584,18 +582,6 @@
     #扣费一般都是在进入副本逻辑里处理,免费只有一次性的,所以放在后面进行重置,防止一直免费
     if curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_EnterFBFree):
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_EnterFBFree, 0)
-    return
-
-def OnCallHelpBattleOK(curPlayer, tick):
-    ## 召唤助战完成
-    do_FBLogic_ID = __GetFBLogic_MapID(GameWorld.GetMap().GetMapID())
-    
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnCallHelpBattleOK"))
-    
-    if callFunc != None:
-        GameWorld.Log("OnCallHelpBattleOK...", curPlayer.GetPlayerID())
-        callFunc(curPlayer, tick)
-        
     return
 
 def InitFBNPCStrengthenData(curPlayer, gameMap):
@@ -1603,17 +1589,6 @@
 
     return callFunc(curPlayer, mapID, lineID, cnt, isFinish, dataEx)
 
-## 副本助战扫荡结果
-def OnPlayerFBHelpBattleSweepResult(curPlayer, mapID, lineID, helpBattlePlayerDict):
-    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
-    
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerFBHelpBattleSweepResult"))
-    
-    if callFunc == None:
-        return False
-
-    return callFunc(curPlayer, mapID, lineID, helpBattlePlayerDict)
-
 ## 开始公共CD副本扫荡
 def OnStartPubCDFBSweep(curPlayer, mapID, lineID, cnt, dataEx):
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
@@ -2388,14 +2363,6 @@
     
     return callFunc(curPlayer, mapID, lineID)
 
-def OnPlayerLVUp(curPlayer):
-    ## 玩家升级
-    do_FBLogic_ID = __GetFBLogic_MapID(GameWorld.GetMap().GetMapID())
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerLVUp"))
-    if callFunc == None:
-        return False
-    return callFunc(curPlayer)
-
 def OnTurnFightRequest(curPlayer, mapID, funcLineID, tagType, tagID, valueList):
     ## 回合战斗请求 - 地图验证
     # @return: 是否允许
@@ -2409,31 +2376,43 @@
     
     return callFunc(curPlayer, mapID, funcLineID, tagType, tagID, valueList)
 
-def OnPlayerLineupAttackSuccess(curPlayer, atkObj, defObj, curSkill, mapID, funcLineID):
-    ## 回合战斗主动发起的玩家阵容释放技能成功
+def GetFBPlayerLineupID(curPlayer, mapID, funcLineID):
+    ## 获取玩家使用的攻防阵容ID
+    # @return: 攻击方阵容ID, 防守方阵容ID
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerLineupAttackSuccess"))
+    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "GetFBPlayerLineupID"))
     
-    if callFunc:
-        callFunc(curPlayer, atkObj, defObj, curSkill, mapID, funcLineID)
-        
-    return
+    if callFunc == None:
+        # 默认不限制
+        return ShareDefine.Lineup_Main, ShareDefine.Lineup_Main
+    
+    return callFunc(curPlayer, mapID, funcLineID)
 
-def OnPlayerLineupAttackResult(curPlayer, atkObj, defObj, curSkill, mapID, funcLineID):
-    ## 回合战斗主动发起的玩家阵容攻击结果额外处理
+def GetFBNPCLineupInfo(curPlayer, mapID, funcLineID):
+    ## 获取NPC阵容相关
+    # @return: npcLineupIDList, strongerLV, difficulty
+    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
+    
+    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "GetFBNPCLineupInfo"))
+    if callFunc == None:
+        return
+    
+    return callFunc(curPlayer, mapID, funcLineID)
+
+def OnPlayerLineupAttackResult(curPlayer, atkObj, killObjList, useSkill, mapID, funcLineID):
+    ## 回合战斗主动发起的玩家阵容攻击结果额外处理 ,一般处理副本相关的掉落、奖励等
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
     callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerLineupAttackResult"))
     
     if callFunc:
-        callFunc(curPlayer, atkObj, defObj, curSkill, mapID, funcLineID)
+        callFunc(curPlayer, atkObj, killObjList, useSkill, mapID, funcLineID)
         
     return
 
-def OnTurnFightOver(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet):
+def OnTurnFightOver(curPlayer, turnFight, mapID, funcLineID, overMsg):
     ## 回合战斗结束
-    # @return: 是否需要同步GameServer, 奖励列表
     
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
@@ -2442,40 +2421,5 @@
     if callFunc == None:
         return
     
-    return callFunc(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet)
+    return callFunc(curPlayer, turnFight, mapID, funcLineID, overMsg)
 
-def OnTurnFightOver_GameServerRet(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet, awardItemList, ret):
-    ## 回合战斗结束 - GameServer处理完毕返回
-    
-    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
-    
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnTurnFightOver_GameServerRet"))
-    
-    if callFunc == None:
-        return
-    
-    return callFunc(curPlayer, mapID, funcLineID, tagType, tagID, valueList, fightRet, awardItemList, ret)
-
-def OnMirrorBattleRequest(curPlayer, mapID, funcLineID, factionPlayerList):
-    ## 镜像战斗请求
-    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
-    
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnMirrorBattleRequest"))
-    
-    if callFunc == None:
-        # 默认允许
-        return True
-    
-    return callFunc(curPlayer, mapID, funcLineID, factionPlayerList)
-
-def OnMirrorBattleOver(battleID, mapID):
-    ## 镜像战斗结束
-    
-    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
-    
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnMirrorBattleOver"))
-    
-    if callFunc == None:
-        return
-    
-    return callFunc(battleID)

--
Gitblit v1.8.0