From 24fbbee4b9af7b5226772378dd83b78c103d969d Mon Sep 17 00:00:00 2001 From: jackpoz Date: Wed, 1 May 2019 18:37:39 +0200 Subject: Core/LFG: Remove dungeon cooldown when completing random dungeons --- src/server/game/DungeonFinding/LFGMgr.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 08a4f88c667..b6863a6e95e 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1429,12 +1429,20 @@ void LFGMgr::FinishDungeon(ObjectGuid gguid, const uint32 dungeonId, Map const* } Player* player = ObjectAccessor::FindPlayer(guid); - if (!player || player->FindMap() != currMap) + if (!player) { TC_LOG_DEBUG("lfg.dungeon.finish", "Group: %s, Player: %s not found in world", gguid.ToString().c_str(), guid.ToString().c_str()); continue; } + if (player->FindMap() != currMap) + { + TC_LOG_DEBUG("lfg.dungeon.finish", "Group: %s, Player: %s is in a different map", gguid.ToString().c_str(), guid.ToString().c_str()); + continue; + } + + player->RemoveAurasDueToSpell(LFG_SPELL_DUNGEON_COOLDOWN); + LFGDungeonData const* dungeonDone = GetLFGDungeon(dungeonId); uint32 mapId = dungeonDone ? uint32(dungeonDone->map) : 0; -- cgit v1.2.3