From 2b1c0dcf269d617de1f6c203df547166661f089e Mon Sep 17 00:00:00 2001 From: Yohann Ferreira Date: Wed, 28 Jul 2010 19:57:31 +0200 Subject: Centralized configuration default values using the VariableData system. Please note that I didn't turned all the getValue() call into new ones, simply because I have to have config object initiated which is not forcefully the case the branding file. Resolves: Manasource Mantis #170. --- src/resources/emotedb.cpp | 5 ++--- src/resources/itemdb.cpp | 2 +- src/resources/iteminfo.cpp | 2 +- src/resources/mapreader.cpp | 8 +++----- src/resources/spritedef.cpp | 11 ++++------- src/resources/wallpaper.cpp | 18 ++++++------------ 6 files changed, 17 insertions(+), 29 deletions(-) (limited to 'src/resources') diff --git a/src/resources/emotedb.cpp b/src/resources/emotedb.cpp index c24e760b..bd8a8e38 100644 --- a/src/resources/emotedb.cpp +++ b/src/resources/emotedb.cpp @@ -43,7 +43,7 @@ void EmoteDB::load() EmoteSprite *unknownSprite = new EmoteSprite; unknownSprite->sprite = AnimatedSprite::load( - paths.getValue("spriteErrorFile", "error.xml") ); + paths.getStringValue("spriteErrorFile")); unknownSprite->name = "unknown"; mUnknown.sprites.push_back(unknownSprite); @@ -78,8 +78,7 @@ void EmoteDB::load() if (xmlStrEqual(spriteNode->name, BAD_CAST "sprite")) { EmoteSprite *currentSprite = new EmoteSprite; - std::string file = paths.getValue("sprites", - "graphics/sprites/") + std::string file = paths.getStringValue("sprites") + (std::string) (const char*) spriteNode->xmlChildrenNode->content; currentSprite->sprite = AnimatedSprite::load(file, diff --git a/src/resources/itemdb.cpp b/src/resources/itemdb.cpp index 65ce38aa..cbccc4cd 100644 --- a/src/resources/itemdb.cpp +++ b/src/resources/itemdb.cpp @@ -117,7 +117,7 @@ void ItemDB::load() mUnknown = new ItemInfo; mUnknown->setName(_("Unknown item")); mUnknown->setDisplay(SpriteDisplay()); - std::string errFile = paths.getValue("spriteErrorFile", "error.xml"); + std::string errFile = paths.getStringValue("spriteErrorFile"); mUnknown->setSprite(errFile, GENDER_MALE); mUnknown->setSprite(errFile, GENDER_FEMALE); diff --git a/src/resources/iteminfo.cpp b/src/resources/iteminfo.cpp index b7b29ee5..9c275f96 100644 --- a/src/resources/iteminfo.cpp +++ b/src/resources/iteminfo.cpp @@ -69,7 +69,7 @@ void ItemInfo::setWeaponType(int type) void ItemInfo::addSound(EquipmentSoundEvent event, const std::string &filename) { - mSounds[event].push_back(paths.getValue("sfx", "sfx/") + filename); + mSounds[event].push_back(paths.getStringValue("sfx") + filename); } const std::string &ItemInfo::getSound(EquipmentSoundEvent event) const diff --git a/src/resources/mapreader.cpp b/src/resources/mapreader.cpp index a8582c9b..bb7ffee0 100644 --- a/src/resources/mapreader.cpp +++ b/src/resources/mapreader.cpp @@ -323,11 +323,9 @@ Map *MapReader::readMap(xmlNodePtr node, const std::string &path) if (config.getValue("showWarps", 1)) { map->addParticleEffect( - paths.getValue("particles", - "graphics/particles/") - + paths.getValue("portalEffectFile", - "warparea.particle.xml"), - objX, objY, objW, objH); + paths.getStringValue("particles") + + paths.getStringValue("portalEffectFile"), + objX, objY, objW, objH); } } else diff --git a/src/resources/spritedef.cpp b/src/resources/spritedef.cpp index 383e8a27..32fb5757 100644 --- a/src/resources/spritedef.cpp +++ b/src/resources/spritedef.cpp @@ -37,8 +37,7 @@ #include SpriteReference *SpriteReference::Empty = new SpriteReference( - paths.getValue("spriteErrorFile", "error.xml"), - 0); + paths.getStringValue("spriteErrorFile"), 0); Action *SpriteDef::getAction(SpriteAction action) const { @@ -67,9 +66,8 @@ SpriteDef *SpriteDef::load(const std::string &animationFile, int variant) { logger->log("Error, failed to parse %s", animationFile.c_str()); - std::string errorFile = paths.getValue("sprites", "graphics/sprites") - + paths.getValue("spriteErrorFile", - "error.xml"); + std::string errorFile = paths.getStringValue("sprites") + + paths.getStringValue("spriteErrorFile"); if (animationFile != errorFile) { return load(errorFile, 0); @@ -287,8 +285,7 @@ void SpriteDef::includeSprite(xmlNodePtr includeNode) if (filename.empty()) return; - XML::Document doc(paths.getValue("sprites", "graphics/sprites/") - + filename); + XML::Document doc(paths.getStringValue("sprites") + filename); xmlNodePtr rootNode = doc.rootNode(); if (!rootNode || !xmlStrEqual(rootNode->name, BAD_CAST "sprite")) diff --git a/src/resources/wallpaper.cpp b/src/resources/wallpaper.cpp index 22bbda9c..06675ab1 100644 --- a/src/resources/wallpaper.cpp +++ b/src/resources/wallpaper.cpp @@ -53,26 +53,20 @@ static void initDefaultWallpaperPaths() ResourceManager *resman = ResourceManager::getInstance(); // Init the path - wallpaperPath = branding.getValue("wallpapersPath", ""); + wallpaperPath = branding.getStringValue("wallpapersPath"); if (!wallpaperPath.empty() && resman->isDirectory(wallpaperPath)) return; else - wallpaperPath = paths.getValue("wallpapers", ""); - - if (wallpaperPath.empty() || !resman->isDirectory(wallpaperPath)) - wallpaperPath = "graphics/images/"; + wallpaperPath = paths.getValue("wallpapers", "graphics/images/"); // Init the default file - wallpaperFile = branding.getValue("wallpaperFile", ""); + wallpaperFile = branding.getStringValue("wallpaperFile"); - if (!wallpaperFile.empty() && resman->isDirectory(wallpaperFile)) + if (!wallpaperFile.empty()) return; else - wallpaperFile = paths.getValue("wallpaperFile", ""); - - if (wallpaperFile.empty() || !resman->isDirectory(wallpaperFile)) - wallpaperFile = "login_wallpaper.png"; + wallpaperFile = paths.getValue("wallpaperFile", "login_wallpaper.png"); } bool wallpaperCompare(WallpaperData a, WallpaperData b) @@ -82,7 +76,7 @@ bool wallpaperCompare(WallpaperData a, WallpaperData b) return (aa > ab || (aa == ab && a.width > b.width)); } - +#include void Wallpaper::loadWallpapers() { wallpaperData.clear(); -- cgit v1.2.3-70-g09d2