diff options
author | Treeston <treeston.mmoc@gmail.com> | 2018-01-07 19:47:13 +0100 |
---|---|---|
committer | Treeston <treeston.mmoc@gmail.com> | 2018-01-07 19:53:39 +0100 |
commit | 3bb33e3108c65ba8a1c35b934526562aa542b63b (patch) | |
tree | b67a8438e1947701c131dd6734e2b90eca80c310 /src/server/game/Maps/Map.cpp | |
parent | 38d0c1e940bd8679e42e5336118c5b9fc65a3cdf (diff) |
Core/Map: New Map::ForceRespawn to override objections and force a respawn (equivalent to force = true). Use this to fix various GM commands.
Scripts/Valithria: Fix an issue that could get the encounter stuck in an unloaded state.
Diffstat (limited to 'src/server/game/Maps/Map.cpp')
-rw-r--r-- | src/server/game/Maps/Map.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index f8d122f99f5..9e55fbddb7c 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -3050,7 +3050,7 @@ void Map::Respawn(RespawnInfo* info, bool force, SQLTransaction dbTrans) DoRespawn(type, spawnId, gridId); } -void Map::Respawn(RespawnVector& respawnData, bool force, SQLTransaction dbTrans) +void Map::Respawn(std::vector<RespawnInfo*>& respawnData, bool force, SQLTransaction dbTrans) { SQLTransaction trans = dbTrans ? dbTrans : CharacterDatabase.BeginTransaction(); for (RespawnInfo* info : respawnData) @@ -3086,13 +3086,13 @@ void Map::AddRespawnInfo(RespawnInfo& info, bool replace) ASSERT(success, "Insertion of respawn info with id (%u,%u) into spawn id map failed - state desync.", uint32(ri->type), ri->spawnId); } -static void PushRespawnInfoFrom(RespawnVector& data, RespawnInfoMap const& map, uint32 zoneId) +static void PushRespawnInfoFrom(std::vector<RespawnInfo*>& data, RespawnInfoMap const& map, uint32 zoneId) { for (auto const& pair : map) if (!zoneId || pair.second->zoneId == zoneId) data.push_back(pair.second); } -void Map::GetRespawnInfo(RespawnVector& respawnData, SpawnObjectTypeMask types, uint32 zoneId) const +void Map::GetRespawnInfo(std::vector<RespawnInfo*>& respawnData, SpawnObjectTypeMask types, uint32 zoneId) const { if (types & SPAWN_TYPEMASK_CREATURE) PushRespawnInfoFrom(respawnData, _creatureRespawnTimesBySpawnId, zoneId); @@ -3160,7 +3160,7 @@ void Map::RemoveRespawnTime(RespawnInfo* info, bool doRespawn, SQLTransaction db DeleteRespawnInfo(info); } -void Map::RemoveRespawnTime(RespawnVector& respawnData, bool doRespawn, SQLTransaction dbTrans) +void Map::RemoveRespawnTime(std::vector<RespawnInfo*>& respawnData, bool doRespawn, SQLTransaction dbTrans) { SQLTransaction trans = dbTrans ? dbTrans : CharacterDatabase.BeginTransaction(); for (RespawnInfo* info : respawnData) |