From d1d8b4e1c28911c551ef7331fd76085d5d62fe6a Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 23 Jul 2014 23:41:56 +0300 Subject: In map remap db add patch and split files loading. New options in paths.xml: mapsRemapPatchFile - patch file name for remap db. mapsRemapPatchDir - dir with patch files. --- src/defaults.cpp | 2 ++ src/resources/db/mapdb.cpp | 10 ++++++---- src/resources/db/mapdb.h | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/defaults.cpp b/src/defaults.cpp index 290ee99ba..caaf69774 100644 --- a/src/defaults.cpp +++ b/src/defaults.cpp @@ -555,6 +555,8 @@ DefaultsData* getPathsDefaults() AddDEF("monstersPatchFile", "monsters_patch.xml"); AddDEF("monstersPatchDir", "monsters.d"); AddDEF("mapsRemapFile", "maps/remap.xml"); + AddDEF("mapsRemapPatchFile", "maps/remap_patch.xml"); + AddDEF("mapsRemapPatchDir", "maps/remap.d"); AddDEF("mapsFile", "maps.xml"); AddDEF("mapsPatchFile", "maps_patch.xml"); AddDEF("mapsPatchDir", "maps.d"); diff --git a/src/resources/db/mapdb.cpp b/src/resources/db/mapdb.cpp index 130e82fda..f0c9d988c 100644 --- a/src/resources/db/mapdb.cpp +++ b/src/resources/db/mapdb.cpp @@ -47,17 +47,19 @@ void MapDB::load() if (mLoaded) unload(); - loadRemap(); + loadRemapXmlFile(paths.getStringValue("mapsRemapFile")); + loadRemapXmlFile(paths.getStringValue("mapsRemapPatchFile")); + loadXmlDir("mapsRemapPatchDir", loadRemapXmlFile); + loadInfo(paths.getStringValue("mapsFile")); loadInfo(paths.getStringValue("mapsPatchFile")); loadXmlDir("mapsPatchDir", loadInfo); mLoaded = true; } -void MapDB::loadRemap() +void MapDB::loadRemapXmlFile(const std::string &fileName) { - XML::Document *const doc = new XML::Document( - paths.getStringValue("mapsRemapFile")); + XML::Document *const doc = new XML::Document(fileName); const XmlNodePtrConst root = doc->rootNode(); if (!root) diff --git a/src/resources/db/mapdb.h b/src/resources/db/mapdb.h index a7629ba08..8e2bd6a2c 100644 --- a/src/resources/db/mapdb.h +++ b/src/resources/db/mapdb.h @@ -40,7 +40,7 @@ namespace MapDB */ void load(); - void loadRemap(); + void loadRemapXmlFile(const std::string &fileName); void loadInfo(const std::string &fileName); -- cgit v1.2.3-70-g09d2