7394 【2.0】【后端】雷罚BOSS(副本中只有一个玩家时离线副本关闭逻辑优化)
3个文件已修改
25 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianBoss.py 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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 = []
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
##玩家主动离开副本.
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();
#