diff options
Diffstat (limited to 'src/server/game/DungeonFinding/LFGMgr.cpp')
| -rwxr-xr-x | src/server/game/DungeonFinding/LFGMgr.cpp | 18 | 
1 files changed, 11 insertions, 7 deletions
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 9e9603dc5fe..87466436980 100755 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -539,14 +539,18 @@ void LFGMgr::Join(Player* plr, uint8 roles, const LfgDungeonSet& selectedDungeon              }          } -        // Expand random dungeons and check restrictions -        if (rDungeonId) -            dungeons = GetDungeonsByRandom(rDungeonId); +        // it could be changed +        if (joinData.result == LFG_JOIN_OK) +        { +            // Expand random dungeons and check restrictions +            if (rDungeonId) +                dungeons = GetDungeonsByRandom(rDungeonId); -        // if we have lockmap then there are no compatible dungeons -        GetCompatibleDungeons(dungeons, players, joinData.lockmap); -        if (dungeons.empty()) -            joinData.result = grp ? LFG_JOIN_PARTY_NOT_MEET_REQS : LFG_JOIN_NOT_MEET_REQS; +            // if we have lockmap then there are no compatible dungeons +            GetCompatibleDungeons(dungeons, players, joinData.lockmap); +            if (dungeons.empty()) +                joinData.result = grp ? LFG_JOIN_PARTY_NOT_MEET_REQS : LFG_JOIN_NOT_MEET_REQS; +        }      }      // Can't join. Send result  | 
