From 6b458bedb17a2b272e19bbd1ffab00ead6c6089d Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期六, 13 四月 2019 14:35:52 +0800 Subject: [PATCH] 6459 【后端】【2.0】缥缈仙域开发单(设置充值成功SendDBFinishRecharge时机提前,在收到通知即设置,异常信息通过CTGError记录) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 50 insertions(+), 4 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 6d8d8c7..3fd184c 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py @@ -1229,7 +1229,11 @@ def PlayerLoginInFBCheck(curPlayer, tick): gameMap = GameWorld.GetMap() #如果此地图是自动释放的, 需要检查这个玩家 - if gameMap.GetMapFBType() in [IPY_GameWorld.fbtNull, IPY_GameWorld.fbtCrossVSRoom]: + if gameMap.GetMapFBType() in [IPY_GameWorld.fbtNull]: + return False + + #跨服服务器是直接注册的地图ID数据,地图肯定没有该玩家,所以不判断 + if GameWorld.IsCrossServer(): return False #玩家 在副本中,并且副本不踢出玩家下线 @@ -1263,9 +1267,6 @@ # @return mapID # @remarks 函数详细说明. def __GetFBLogic_MapID(mapID): - #ManorWarMapIDList = ReadChConfig.GetEvalChConfig("ManorWarMapID") - #if mapID in ManorWarMapIDList: - # return 'ManorWar' mapID = FBCommon.GetRecordMapID(mapID) for key, value in ChConfig.Def_FB_MapID.items(): if mapID in value: @@ -2142,6 +2143,51 @@ return callFunc(curPlayer, tick) +## 客户端进入自定义场景 +def OnEnterCustomScene(curPlayer, mapID, lineID): + do_FBLogic_ID = __GetFBLogic_MapID(mapID) + + callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnEnterCustomScene")) + + if callFunc == None: + return + + return callFunc(curPlayer, mapID, lineID) + +## 客户端发送刷新自定义副本奖励 +def OnRefreshCustomFBPrize(curPlayer, mapID, lineID): + do_FBLogic_ID = __GetFBLogic_MapID(mapID) + + callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnRefreshCustomFBPrize")) + + if callFunc == None: + return [] + + return callFunc(curPlayer, mapID, lineID) + +## 给自定义副本奖励后续处理 +def OnGiveCustomFBPrizeOK(curPlayer, mapID, lineID): + do_FBLogic_ID = __GetFBLogic_MapID(mapID) + + callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnGiveCustomFBPrizeOK")) + + if callFunc == None: + return + + return callFunc(curPlayer, mapID, lineID) + + +## 结束跨服副本 +def OnEndCrossFB(curPlayer, mapID, lineID, exData): + do_FBLogic_ID = __GetFBLogic_MapID(mapID) + + callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnEndCrossFB")) + + if callFunc == None: + return + + return callFunc(curPlayer, mapID, lineID, exData) + def OnPlayerLVUp(curPlayer): ## 玩家升级 do_FBLogic_ID = __GetFBLogic_MapID(GameWorld.GetMap().GetMapID()) -- Gitblit v1.8.0