From db4af7ca4cd105b5a1dd1493fb1740cdd27329bb Mon Sep 17 00:00:00 2001 From: Shauren Date: Thu, 26 Jun 2025 15:24:16 +0200 Subject: Core/LFG: Change InstanceScript::UpdateLfgEncounterState to only pass valid dungeon encounter ids to LFGMgr --- src/server/game/DungeonFinding/LFGMgr.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/server/game/DungeonFinding/LFGMgr.cpp') diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 5ae5208d3db..5dc01536bf6 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1445,10 +1445,10 @@ void LFGMgr::TeleportPlayer(Player* player, bool out, bool fromOpcode /*= false* Check if dungeon can be rewarded, if any. @param[in] gguid Group guid - @param[in] dungeonEncounterIds DungeonEncounter that was just completed + @param[in] dungeonEncounters DungeonEncounter that was just completed @param[in] currMap Map of the instance where encounter was completed */ -void LFGMgr::OnDungeonEncounterDone(ObjectGuid gguid, std::array const& dungeonEncounterIds, Map const* currMap) +void LFGMgr::OnDungeonEncounterDone(ObjectGuid gguid, std::span dungeonEncounters, Map const* currMap) { if (GetState(gguid) == LFG_STATE_FINISHED_DUNGEON) // Shouldn't happen. Do not reward multiple times { @@ -1459,7 +1459,7 @@ void LFGMgr::OnDungeonEncounterDone(ObjectGuid gguid, std::array cons uint32 gDungeonId = GetDungeon(gguid); LFGDungeonData const* dungeonDone = GetLFGDungeon(gDungeonId); // LFGDungeons can point to a DungeonEncounter from any difficulty so we need this kind of lenient check - if (!dungeonDone->finalDungeonEncounterId || !advstd::ranges::contains(dungeonEncounterIds, dungeonDone->finalDungeonEncounterId)) + if (!advstd::ranges::contains(dungeonEncounters, dungeonDone->finalDungeonEncounterId)) return; FinishDungeon(gguid, gDungeonId, currMap); -- cgit v1.2.3