diff options
author | Shauren <shauren.trinity@gmail.com> | 2025-06-26 15:24:16 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2025-06-26 15:24:16 +0200 |
commit | db4af7ca4cd105b5a1dd1493fb1740cdd27329bb (patch) | |
tree | 9d0108146ac248773baff0e31991cf1ef99ad22b /src/server/game/DungeonFinding/LFGMgr.cpp | |
parent | 9247723c0721207dcaea22141861855f4e0a173f (diff) |
Core/LFG: Change InstanceScript::UpdateLfgEncounterState to only pass valid dungeon encounter ids to LFGMgr
Diffstat (limited to 'src/server/game/DungeonFinding/LFGMgr.cpp')
-rw-r--r-- | src/server/game/DungeonFinding/LFGMgr.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
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<uint32, 4> const& dungeonEncounterIds, Map const* currMap) +void LFGMgr::OnDungeonEncounterDone(ObjectGuid gguid, std::span<uint32 const> 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<uint32, 4> 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); |