hxp
2018-11-25 ed47f1d7382a0073c62954435e3a82b390c613b6
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py
@@ -39,6 +39,7 @@
import GameWorld
import ChConfig
import PlayerControl
import FamilyRobBoss
import EventShell
import FBLogic
import FBCommon
@@ -101,6 +102,11 @@
    if fbType == 0:
        return
    
    if fbType == IPY_GameWorld.fbtSingle:
        ownerID = gameFBMgr.GetGameFBDictByKey(ChConfig.Def_FB_SingleFBPlayerID)
        if ownerID in PyGameData.g_fbHelpBattlePlayerDict:
            PyGameData.g_fbHelpBattlePlayerDict.pop(ownerID)
    #副本关闭时统一清怪
    FBCommon.ClearFBNPC()
    
@@ -307,7 +313,7 @@
        return
    
    #特殊副本,不执行这个逻辑
    if not GameWorld.GetMap().GetAutoSize():
    if not IsNoPlayerNeedCloseFB():
        return
    
    gameFB = GameWorld.GetGameFB()
@@ -422,9 +428,13 @@
            return IPY_GameWorld.cmePlayerFull
    #检查副本状态是否可以登录
    if not FBCommon.CheckFBStateCanEnter(askStruct):
    checkRet = FBCommon.CheckFBStateCanEnter(askStruct)
    if type(checkRet) not in [tuple, list]:
        checkRet = (checkRet, "FB_andyshao_861048")
    canEnter, notifyMark = checkRet
    if not canEnter:
        #副本关闭中, 请稍后
        return IPY_GameWorld.cmeCustom, 'FB_andyshao_861048'
        return IPY_GameWorld.cmeCustom, notifyMark
    
    changeMapAskResult = FBLogic.OnChangeMapAsk(askStruct, tick)
@@ -497,6 +507,9 @@
    __RefreshOnFiveMinute(tick)
    #定时检测关闭超时文件
    EventReport.OnTimeCloseScribeTxt()
    #仙盟归属boss定时处理
    FamilyRobBoss.OnFamilyOwnerBossProcess(tick)
    return
## 通知RouteServer 消息
@@ -584,8 +597,7 @@
    if gameMap.GetMapFBType() == 0:
        return
    
    if gameMap.GetAutoSize() == 0:
        #只处理自动是否的地图
    if not IsNoPlayerNeedCloseFB():
        return
    
    playerManager = gameWorld.GetMapCopyPlayerManager()
@@ -594,6 +606,9 @@
        __CloseFB(GameWorld.GetGameWorld(), GameWorld.GetGameWorld().GetTick())    
def IsNoPlayerNeedCloseFB():
    ## 副本中无玩家是否需要自动关闭的副本
    return GameWorld.GetMap().GetAutoSize() and GameWorld.GetMap().GetMapID() not in ChConfig.Def_NoPlayerNotCloseAutoSizeMap
#//08 06 根据国家统计的玩家数目#tagMPlayerCountByCountry
#tagMPlayerCountByCountry       *   GettagMPlayerCountByCountry();