From f495a32d55731268db3e8fbd272769e1c6ab1fb3 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 17 十月 2025 14:32:11 +0800
Subject: [PATCH] 16 卡牌服务端(删除红包相关;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py | 40 ++++++++++++++++++++++++++++------------
1 files changed, 28 insertions(+), 12 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 a993db4..88f0916 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
@@ -20,13 +20,10 @@
import GameWorldProcess
import CrossRealmPlayer
import DataRecordPack
-import IpyGameDataPY
-import PlayerSuccess
import ReadChConfig
import ShareDefine
import PyGameData
import FBCommon
-import GameMap
import GameObj
import random
@@ -551,8 +548,6 @@
#注册玩家离开副本时间
gameFBMgr.SetPlayerLogoffTick(0)
-
- PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_FeastRedPack_EnterMap, 1, [gameMapID])
if gameFBMgr.HaveFBPlayer(curPlayerID):
#已经注册了这个玩家, 不清除已注册的玩家的字典信息
@@ -1311,9 +1306,6 @@
if mapID in value:
return key
- if mapID in FBCommon.GetGeneralTrainMapIDList():
- return "GeneralTrain"
-
#for key , value in ReadChConfig.GetEvalChConfig("MapID_ProcessPy").items():
# if mapID in value:
# return key
@@ -1523,8 +1515,10 @@
return callFunc(curPlayer, addExp, expViewType)
-## 副本扫荡询问
def OnPlayerFBSweepAsk(curPlayer, mapID, lineID, cnt, dataEx):
+ ## 副本扫荡询问
+ # @return: None - 不可扫荡
+ # @return: 非None - 可以扫荡,且返回值直接传给 OnPlayerFBSweepResult
do_FBLogic_ID = __GetFBLogic_MapID(mapID)
callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerFBSweepAsk"))
@@ -1534,8 +1528,8 @@
return callFunc(curPlayer, mapID, lineID, cnt, dataEx)
-## 副本扫荡结果
-def OnPlayerFBSweepResult(curPlayer, mapID, lineID, cnt, dataEx):
+def OnPlayerFBSweepResult(curPlayer, mapID, lineID, cnt, dataEx, askRet):
+ ## 副本扫荡结果
do_FBLogic_ID = __GetFBLogic_MapID(mapID)
callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnPlayerFBSweepResult"))
@@ -1543,7 +1537,7 @@
if callFunc == None:
return False
- return callFunc(curPlayer, mapID, lineID, cnt, dataEx)
+ return callFunc(curPlayer, mapID, lineID, cnt, dataEx, askRet)
## 开始公共CD副本扫荡
def OnStartPubCDFBSweep(curPlayer, mapID, lineID, cnt, dataEx):
@@ -2279,6 +2273,28 @@
return callFunc(curPlayer, mapID, funcLineID)
+def GetFBNPCInitAttr(curPlayer, turnFight, npcObj):
+ ## 获取副本指定NPC初始化属性
+ do_FBLogic_ID = __GetFBLogic_MapID(turnFight.mapID)
+
+ callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "GetFBNPCInitAttr"))
+ if callFunc == None:
+ return
+
+ return callFunc(curPlayer, turnFight, npcObj)
+
+def OnFBNPCKilledBefore(curPlayer, turnFight, gameObj, killer):
+ ## 副本NPC被击杀前处理,一般用于处理一些不被击杀的副本NPC逻辑
+ # @return: 可否被正常击杀
+ do_FBLogic_ID = __GetFBLogic_MapID(turnFight.mapID)
+
+ callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnFBNPCKilledBefore"))
+ if callFunc == None:
+ # 不需要逻辑时默认可被正常击杀
+ return True
+
+ return callFunc(curPlayer, turnFight, gameObj, killer)
+
def OnPlayerLineupAttackResult(curPlayer, atkObj, killObjList, useSkill, mapID, funcLineID):
## 回合战斗主动发起的玩家阵容攻击结果额外处理 ,一般处理副本相关的掉落、奖励等
do_FBLogic_ID = __GetFBLogic_MapID(mapID)
--
Gitblit v1.8.0