From 21177487ea9476cb4db3f498353c340181d87e14 Mon Sep 17 00:00:00 2001 From: Ovah Date: Sat, 24 Jul 2021 14:49:21 +0200 Subject: [PATCH] Core/Spawns: prevent spawn groups from bypassing spawnMask restrictions (#26711) * spawn groups have been able to spawn for all difficulties even when they should be restricted to a single difficulty only (cherry picked from commit 48f63eda9029d4fe16b7a350059c8e26ba8484ce) --- src/server/game/Maps/Map.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index de95c08b4a..dcf634ae3a 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -3543,6 +3543,10 @@ bool Map::SpawnGroupSpawn(uint32 groupId, bool ignoreRespawn, bool force, std::v for (SpawnData const* data : toSpawn) { + // don't spawn if the current map difficulty is not used by the spawn + if (std::find(data->spawnDifficulties.begin(), data->spawnDifficulties.end(), GetDifficultyID()) == data->spawnDifficulties.end()) + continue; + // don't spawn if the grid isn't loaded (will be handled in grid loader) if (!IsGridLoaded(data->spawnPoint)) continue;