aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-07-06 14:29:54 +0200
committerOvahlord <dreadkiller@gmx.de>2024-07-06 15:36:52 +0200
commit1a3ad52a0ba46a96a1115a01855c2dbe7035bd78 (patch)
tree735c280c579e8473a08e6b9b08b4963069b33587
parent134b602b959864b4c04b9762152d55dab02efa0b (diff)
Tools/vmap_assembler: Organize vmap files into directory-per-map
(cherry picked from commit 518fe1fd1ecf107e11336c4a41ed90405b115dc0)
-rw-r--r--src/common/Collision/Management/VMapManager2.cpp2
-rw-r--r--src/common/Collision/Maps/MapTree.cpp2
-rw-r--r--src/tools/vmap4_assembler/TileAssembler.cpp5
3 files changed, 6 insertions, 3 deletions
diff --git a/src/common/Collision/Management/VMapManager2.cpp b/src/common/Collision/Management/VMapManager2.cpp
index 02d618836ec..21f73e2e7c8 100644
--- a/src/common/Collision/Management/VMapManager2.cpp
+++ b/src/common/Collision/Management/VMapManager2.cpp
@@ -101,7 +101,7 @@ namespace VMAP
// move to MapTree too?
std::string VMapManager2::getMapFileName(unsigned int mapId)
{
- return Trinity::StringFormat("{:04}.vmtree", mapId);
+ return Trinity::StringFormat("{:04}/{:04}.vmtree", mapId, mapId);
}
LoadResult VMapManager2::loadMap(char const* basePath, unsigned int mapId, int x, int y)
diff --git a/src/common/Collision/Maps/MapTree.cpp b/src/common/Collision/Maps/MapTree.cpp
index 8a9cf44e9d1..b168134486f 100644
--- a/src/common/Collision/Maps/MapTree.cpp
+++ b/src/common/Collision/Maps/MapTree.cpp
@@ -71,7 +71,7 @@ namespace VMAP
std::string getTileFileName(uint32 mapID, uint32 tileX, uint32 tileY, std::string_view extension)
{
- return Trinity::StringFormat("{:04}_{:02}_{:02}.{}", mapID, tileY, tileX, extension);
+ return Trinity::StringFormat("{:04}/{:04}_{:02}_{:02}.{}", mapID, mapID, tileY, tileX, extension);
}
bool StaticMapTree::GetLocationInfo(Vector3 const& pos, LocationInfo& info) const
diff --git a/src/tools/vmap4_assembler/TileAssembler.cpp b/src/tools/vmap4_assembler/TileAssembler.cpp
index ab2ec472d61..162c1bad29e 100644
--- a/src/tools/vmap4_assembler/TileAssembler.cpp
+++ b/src/tools/vmap4_assembler/TileAssembler.cpp
@@ -208,7 +208,10 @@ namespace VMAP
for (uint32 i = 0; i < mapSpawns.size(); ++i)
modelNodeIdx.try_emplace(mapSpawns[i]->ID, i);
- boost::filesystem::path mapDestDir = iDestDir;
+ boost::filesystem::path mapDestDir = iDestDir / Trinity::StringFormat("{:04}", data.MapId);
+
+ boost::system::error_code ec;
+ boost::filesystem::create_directory(mapDestDir, ec);
// write map tree file
boost::filesystem::path mapfilename = mapDestDir / Trinity::StringFormat("{:04}.vmtree", data.MapId);