Fix: 2529 【测试】组队系统在某些情况下可能导致队伍进入错误的副本线路
2个文件已修改
18 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
@@ -944,6 +944,16 @@
            #不可进入
            return False
        if askStruct.GetTeamLV() == IPY_GameWorld.tmlLeader:
            '''原因:
                                队长退出组队副本,其他队员还在里面,此时副本不会被关闭
                                 队长在队伍ID不变的情况下又组了其他人,然后又想进去该副本,那么这时会进入之前队员还在的那条队伍分线,导致队伍线路错乱
                                所以此处不允许该队长进入,并提示其等待或重新建队进入
            FBinCantEnter 副本清理中,请等待关闭或重新创建队伍进入
            '''
            return False, "FBinCantEnter"
        #副本在等待关闭状态不允许玩家进入
        return (gameWorld.GetOpenState() != IPY_GameWorld.fbosWaitForClose)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/GameWorldProcess.py
@@ -422,9 +422,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)