From 617faac5b9f3ee9e987718f2c613920742c67944 Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期四, 03 一月 2019 16:15:11 +0800 Subject: [PATCH] 2811 【1.4.100】仙盟boss偶发可以额外进入一次 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyBoss.py | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyBoss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyBoss.py index 076a7a6..44b0231 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyBoss.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyBoss.py @@ -36,9 +36,10 @@ FB_Step_Open, # 地图开启 FB_Step_MapPrepare, # 地图准备 FB_Step_Fighting, # 战斗中 -FB_Step_LeaveTime, # 自由时间 +FB_Step_LeaveTime, # 自由时间(还可进入) +FB_Step_LeaveTime1, # 自由时间(不可进入) FB_Step_Over, # 副本关闭 -) = range(5) +) = range(6) #---战盟副本--- FamilyBossFB_Star = 'FamilyBossFB_Star' #评级 @@ -103,8 +104,8 @@ # 通知GameServer副本结束 gameFB = GameWorld.GetGameFB() familyID = gameFB.GetGameFBDictByKey(Map_FamilyBossFB_FamilyID) - msgStr = str([familyID, 0]) - GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(0, 0, 0, 'FamilyBossFBState', msgStr, len(msgStr)) +# msgStr = str([familyID, 0]) +# GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(0, 0, 0, 'FamilyBossFBState', msgStr, len(msgStr)) if familyID in PyGameData.g_familyBossOpenCountDict: PyGameData.g_familyBossOpenCountDict.pop(familyID) @@ -217,6 +218,8 @@ __DoLogic_MapFighting(tick) elif fbStep == FB_Step_LeaveTime: __DoLogic_MapLeave(tick) + elif fbStep == FB_Step_LeaveTime1: + __DoLogic_MapLeave(tick) return @@ -291,8 +294,16 @@ return def __DoLogic_MapLeave(tick): + gameFB = GameWorld.GetGameFB() invadeCfg = GetFamilyBossFBTimeCfg() - if tick - GameWorld.GetGameFB().GetFBStepTick() < invadeCfg[Def_Time_Leave] * 1000: + remianTime = invadeCfg[Def_Time_Leave] * 1000 - (tick - GameWorld.GetGameFB().GetFBStepTick()) + if remianTime > 0: + fbStep = gameFB.GetFBStep() + if remianTime < 5000 and fbStep == FB_Step_LeaveTime: + gameFB.SetFBStep(FB_Step_LeaveTime1) + familyID = gameFB.GetGameFBDictByKey(Map_FamilyBossFB_FamilyID) + msgStr = str([familyID, 0]) + GameWorld.GetPlayerManager().GameServer_QueryPlayerResult(0, 0, 0, 'FamilyBossFBState', msgStr, len(msgStr)) return # 时间到,踢出还在副本的玩家等... -- Gitblit v1.8.0