Core/LFG: Remove dungeon cooldown when completing random dungeons

This commit is contained in:
jackpoz
2019-05-01 18:37:39 +02:00
committed by Ovahlord
parent 9dce3e4250
commit 950eff5fda

View File

@@ -1507,12 +1507,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;