From 41003de2a34a117d9aa286009742493e2aa9ff4b Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 23 五月 2019 17:18:56 +0800
Subject: [PATCH] 6843 【后端】【2.0】缥缈仙域优化 6897 【后端】【2.0】缥缈仙域产出类型修改 6805 【后端】【2.0】副本前端化(缥缈宝藏、妖王、草园、VIPboss)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py |   42 +++++++++++++++++++++++++++++-------------
 1 files changed, 29 insertions(+), 13 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 ee6d852..876a00b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBLogic.py
@@ -272,6 +272,12 @@
 #  @return None
 #  @remarks 函数详细说明.
 def DoFB_Player_KillNPC(curPlayer , curNPC , tick):
+    mapID = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomSceneMapID)
+    lineID = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_ClientCustomSceneLineID)
+    if mapID:
+        DoCustomScene_Player_KillNPC(curPlayer, curNPC, mapID, lineID)
+        return
+    
     do_FBLogic_ID = __GetFBLogic_MapID(GameWorld.GetMap().GetMapID())
     
     callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "DoFB_Player_KillNPC"))
@@ -1564,7 +1570,7 @@
     callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnEnterFBEvent"))
     
     if callFunc == None:
-        return False
+        return True
     
     return callFunc(curPlayer, mapID, lineID, tick)
 
@@ -2180,28 +2186,38 @@
     
     return callFunc(curPlayer, mapID, lineID)
 
-## 客户端发送刷新自定义副本奖励
-def OnRefreshCustomFBPrize(curPlayer, mapID, lineID):
+## 判断可否召唤木桩怪
+def OnCanSummonPriWoodPile(curPlayer, mapID, lineID, npcID, count):
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnRefreshCustomFBPrize"))
+    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnCanSummonPriWoodPile"))
     
     if callFunc == None:
-        return []
+        return True
     
-    return callFunc(curPlayer, mapID, lineID)
+    return callFunc(curPlayer, mapID, lineID, npcID, count)
 
-## 给自定义副本奖励后续处理
-## @return: 返回结算副本over信息字典,不含jsonItem信息
-def OnGiveCustomFBPrizeOK(curPlayer, mapID, lineID):
+## 自定义场景副本击杀NPC
+def DoCustomScene_Player_KillNPC(curPlayer, curNPC, mapID, lineID):
     do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
-    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnGiveCustomFBPrizeOK"))
+    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "DoCustomScene_Player_KillNPC"))
     
-    if callFunc == None:
-        return {}
+    if callFunc:
+        callFunc(curPlayer, curNPC, mapID, lineID)
+        
+    return
+
+## 自定义场景采集OK
+def OnCustomSceneCollectOK(curPlayer, mapID, lineID, npcID):
+    do_FBLogic_ID = __GetFBLogic_MapID(mapID)
     
-    return callFunc(curPlayer, mapID, lineID)
+    callFunc = GameWorld.GetExecFunc(FBProcess, "GameLogic_%s.%s" % (do_FBLogic_ID, "OnCustomSceneCollectOK"))
+    
+    if callFunc:
+        callFunc(curPlayer, mapID, lineID, npcID)
+        
+    return
 
 ## 进入跨服副本注册数据前逻辑
 ## @return: 是否可以注册前往跨服副本,次函数中可以写一些扣除消耗逻辑等

--
Gitblit v1.8.0