From a20d1ef24191c07fc7150303ca2aa965a2262f19 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 27 五月 2019 14:50:23 +0800
Subject: [PATCH] 3724 【BUG】【2.0】快速连续点击进入草园不弹结算(优化自定义场景采集判断,优化进入自定义场景验证)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ClearDevil.py | 19 ++++++++++++++++++-
1 files changed, 18 insertions(+), 1 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ClearDevil.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ClearDevil.py
index b678f1d..0e46602 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ClearDevil.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ClearDevil.py
@@ -26,6 +26,7 @@
import ShareDefine
import EventReport
import PlayerControl
+import QuestCommon
#---副本配置对应key值---
@@ -57,6 +58,7 @@
) = range(5)
FBPlayerDict_MissionID = 'FBPlayerDict_MissionID' #副本任务ID
+FBPlayerDict_MissionType = 'FBPlayerDict_MissionType' #副本任务类型
FBPlayerDict_CostTime = 'FBPlayerDict_CostTime' #副本耗时
FBPlayerDict_TotalPoint = 'FBPlayerDict_TotalPoint' # 获得的总积分
FBPlayerDict_NPCRemainCnt = 'FBPlayerDict_NPCRemainCnt_%s' # NPC剩余数量
@@ -140,8 +142,11 @@
fbMissionID = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ReqFBMissionID)
if fbMissionID:
+ fbMissionType = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ReqFBMissionType)
gameFB.SetGameFBDict(FBPlayerDict_MissionID, fbMissionID)
+ gameFB.SetGameFBDict(FBPlayerDict_MissionType, fbMissionType)
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ReqFBMissionID, 0)
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ReqFBMissionType, 0)
fbStep = gameFB.GetFBStep()
if fbStep < FB_Step_Prepare:
@@ -395,6 +400,16 @@
return
+##玩家退出家族处理
+# @param curPlayer 玩家实例
+# @param tick 时间戳
+# @return 返回值无意义
+def OnLeaveFamily(curPlayer, tick):
+ gameFB = GameWorld.GetGameFB()
+ fbMissionType = gameFB.GetGameFBDictByKey(FBPlayerDict_MissionType)
+ if fbMissionType == QuestCommon.Def_Mission_Type_RunFamily:
+ gameFB.SetGameFBDict(FBPlayerDict_MissionType, 0)
+ return
## 任务专用,触发事件(副本内完成某任务)
# @param curPlayer:玩家实例
@@ -419,6 +434,7 @@
awardDict[FBCommon.Over_exp] = exp
awardDict[FBCommon.Over_expPoint] = expPoint
awardDict[FBCommon.Over_itemInfo] = FBCommon.GetJsonItemList(itemList)
+ awardDict[FBCommon.Over_money] = FBCommon.GetJsonMoneyList(moneyDict)
__SendOverInfo(curPlayer, awardDict)
return
@@ -473,8 +489,9 @@
costTime = tick - GameWorld.GetGameFB().GetFBStepTick()
gameFB.SetGameFBDict(FBPlayerDict_CostTime, costTime)
fbMissionID = gameFB.GetGameFBDictByKey(FBPlayerDict_MissionID)
+ fbMissionType = gameFB.GetGameFBDictByKey(FBPlayerDict_MissionType)
# 通知结果 此处只通知失败,成功在完成任务时通知, 不是通过任务进的副本也通知
- if not isPass or not fbMissionID:
+ if not isPass or not fbMissionID or not fbMissionType:
__SendOverInfo(curPlayer, {FBCommon.Over_isPass:int(isPass), FBCommon.Over_exp:exp,FBCommon.Over_expPoint:expPoint, FBCommon.Over_costTime:costTime})
# 进入离开阶段
--
Gitblit v1.8.0