aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/game/World/World.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index 65f5f9bd59c..125e9036e64 100644
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -1576,11 +1576,17 @@ void World::SetInitialWorldSettings()
sTaxiPathGraph.Initialize();
std::vector<uint32> mapIds;
+ std::unordered_map<uint32, std::vector<uint32>> mapData;
for (MapEntry const* mapEntry : sMapStore)
+ {
mapIds.push_back(mapEntry->ID);
+ mapData.emplace(std::piecewise_construct, std::forward_as_tuple(mapEntry->ID), std::forward_as_tuple());
+ if (mapEntry->ParentMapID != -1)
+ mapData[mapEntry->ParentMapID].push_back(mapEntry->ID);
+ }
if (VMAP::VMapManager2* vmmgr2 = dynamic_cast<VMAP::VMapManager2*>(VMAP::VMapFactory::createOrGetVMapManager()))
- vmmgr2->InitializeThreadUnsafe(mapIds);
+ vmmgr2->InitializeThreadUnsafe(mapData);
MMAP::MMapManager* mmmgr = MMAP::MMapFactory::createOrGetMMapManager();
mmmgr->InitializeThreadUnsafe(mapIds);