From ddc480baf399e9e0c87406c2c6738e04dbe6da86 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 20 六月 2019 12:01:03 +0800
Subject: [PATCH] 7394 【2.0】【后端】雷罚BOSS(副本中只有一个玩家时离线副本关闭逻辑优化)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py | 12 ++----------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py | 11 +++++++++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py | 2 ++
3 files changed, 13 insertions(+), 12 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index ffcbed7..fcbb6db 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -1853,6 +1853,8 @@
# 无玩家时不自动关闭的自伸缩副本
Def_NoPlayerNotCloseAutoSizeMap = [Def_FBMapID_FamilyInvade, Def_FBMapID_FamilyBossMap, Def_FBMapID_GatherSoul]
+# 无玩家时自动关闭的非自伸缩副本
+Def_NoPlayerCloseNotAutoSizeMap = [Def_FBMapID_ZhuXianBoss]
# 不可切换PK模式的地图
Def_CanNotChangeAtkModelMap = []
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
index 9fb347b..ff0248a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py
@@ -179,7 +179,8 @@
# @remarks
def OnCloseFB(tick):
gameWorld = GameWorld.GetGameWorld()
-
+ lineID = gameWorld.GetPropertyID() - 1
+ PyGameData.g_ZhuXianBossPlayerHurtDict[lineID] = {}
gameWorld.SetPropertyID(0)
return
@@ -191,15 +192,6 @@
gameWorld = GameWorld.GetGameWorld()
# 清除鼓舞buff
FBCommon.ClearEncourageBuff(curPlayer, tick)
- #最后一人
- if gameWorld.GetMapCopyPlayerManager().GetPlayerCount() == 1:
- lineID = gameWorld.GetPropertyID() - 1
- PyGameData.g_ZhuXianBossPlayerHurtDict[lineID] = {}
-
- GameWorld.GetGameFB().ClearGameFBDict()
- GameWorldProcess.CloseFB(tick)
- return
-
return
##玩家主动离开副本.
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py
index 747aea3..bfea990 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py
@@ -661,8 +661,15 @@
def IsNoPlayerNeedCloseFB():
## 副本中无玩家是否需要自动关闭的副本
- return GameWorld.GetMap().GetAutoSize() and GameWorld.GetMap().GetMapID() not in ChConfig.Def_NoPlayerNotCloseAutoSizeMap
-
+ if GameWorld.GetMap().GetAutoSize():
+ if GameWorld.GetMap().GetMapID() in ChConfig.Def_NoPlayerNotCloseAutoSizeMap:
+ return False
+ return True
+ else:
+ if GameWorld.GetMap().GetMapID() in ChConfig.Def_NoPlayerCloseNotAutoSizeMap:
+ return True
+ return False
+
#//08 06 根据国家统计的玩家数目#tagMPlayerCountByCountry
#tagMPlayerCountByCountry * GettagMPlayerCountByCountry();
#
--
Gitblit v1.8.0