diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-07-30 20:37:30 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-07-30 20:37:48 +0300 |
commit | 69704874b67c3cae63ee7d27634bbffa4cc4f6e2 (patch) | |
tree | f6a1d56199a3d0e5f2fcfb4e6670cb833c890ab3 /src/resources/db/badgesdb.cpp | |
parent | 003ce4b2567b85b5a129c78fcf75cd73c455d557 (diff) | |
download | manaplus-69704874b67c3cae63ee7d27634bbffa4cc4f6e2.tar.gz manaplus-69704874b67c3cae63ee7d27634bbffa4cc4f6e2.tar.bz2 manaplus-69704874b67c3cae63ee7d27634bbffa4cc4f6e2.tar.xz manaplus-69704874b67c3cae63ee7d27634bbffa4cc4f6e2.zip |
Add support for include tag in badges.xml.
Also add patches and parts support for badges.xml
Diffstat (limited to 'src/resources/db/badgesdb.cpp')
-rw-r--r-- | src/resources/db/badgesdb.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/src/resources/db/badgesdb.cpp b/src/resources/db/badgesdb.cpp index d7476c7f0..9efd57d82 100644 --- a/src/resources/db/badgesdb.cpp +++ b/src/resources/db/badgesdb.cpp @@ -20,6 +20,10 @@ #include "resources/db/badgesdb.h" +#include "configuration.h" + +#include "resources/beingcommon.h" + #include "utils/xmlutils.h" #include "debug.h" @@ -32,9 +36,11 @@ namespace bool mLoaded = false; } -static void loadDB(const std::string &name, BadgesInfos &arr) +static void loadXmlFile(const std::string &file, + const std::string &name, + BadgesInfos &arr) { - readXmlStringMap("badges.xml", + readXmlStringMap(file, "badges", name, "badge", @@ -43,6 +49,20 @@ static void loadDB(const std::string &name, BadgesInfos &arr) arr); } +static void loadDB(const std::string &name, BadgesInfos &arr) +{ + loadXmlFile(paths.getStringValue("badgesFile"), + name, arr); + loadXmlFile(paths.getStringValue("badgesPatchFile"), + name, arr); + + StringVect listVect; + BeingCommon::getIncludeFiles(paths.getStringValue( + "badgesPatchDir"), listVect, ".xml"); + FOR_EACH (StringVectCIter, itVect, listVect) + loadXmlFile(*itVect, name, arr); +} + void BadgesDB::load() { if (mLoaded) |