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