aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/DungeonFinding/LFGMgr.cpp
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2019-05-01 18:37:39 +0200
committerShauren <shauren.trinity@gmail.com>2021-12-02 23:45:29 +0100
commit97be87b7d55dbbc794e83bf6a70eff4df397dd91 (patch)
tree24d0de38aae93b5f75c76fa79e33b539cbe36bda /src/server/game/DungeonFinding/LFGMgr.cpp
parentc22431936e5bd65474aca4c1fd71e315a20c34cb (diff)
Core/LFG: Remove dungeon cooldown when completing random dungeons
(cherry picked from commit 24fbbee4b9af7b5226772378dd83b78c103d969d)
Diffstat (limited to 'src/server/game/DungeonFinding/LFGMgr.cpp')
-rw-r--r--src/server/game/DungeonFinding/LFGMgr.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp
index 9d18eadc1bc..16277601b74 100644
--- a/src/server/game/DungeonFinding/LFGMgr.cpp
+++ b/src/server/game/DungeonFinding/LFGMgr.cpp
@@ -1451,12 +1451,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;