summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-10-22 19:54:07 +0200
committerYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-10-22 19:54:07 +0200
commit3e248a195ee45cba0b06a75f0afbe6a7e6436e87 (patch)
treee594ed2397dda6ac3b70740bdad1f74d0034709c /src
parent8629addec23239b667295c68ee3061ebc4ca918d (diff)
parent4e49081ca1f0d658308582ef3084837bb58c33ec (diff)
downloadmanaserv-3e248a195ee45cba0b06a75f0afbe6a7e6436e87.tar.gz
manaserv-3e248a195ee45cba0b06a75f0afbe6a7e6436e87.tar.bz2
manaserv-3e248a195ee45cba0b06a75f0afbe6a7e6436e87.tar.xz
manaserv-3e248a195ee45cba0b06a75f0afbe6a7e6436e87.zip
Merge branch 'master' of github.com:mana/manaserv
Diffstat (limited to 'src')
-rw-r--r--src/game-server/itemmanager.cpp2
-rw-r--r--src/game-server/map.h4
-rw-r--r--src/game-server/monstermanager.cpp2
-rw-r--r--src/game-server/skillmanager.cpp2
-rw-r--r--src/utils/string.h10
5 files changed, 13 insertions, 7 deletions
diff --git a/src/game-server/itemmanager.cpp b/src/game-server/itemmanager.cpp
index 5e24927b..bc2cb9a9 100644
--- a/src/game-server/itemmanager.cpp
+++ b/src/game-server/itemmanager.cpp
@@ -72,7 +72,7 @@ ItemClass *ItemManager::getItem(int itemId) const
ItemClass *ItemManager::getItemByName(const std::string &name) const
{
- return mItemClassesByName.find(name);
+ return mItemClassesByName.value(name);
}
unsigned int ItemManager::getDatabaseVersion() const
diff --git a/src/game-server/map.h b/src/game-server/map.h
index eca36863..28faed7f 100644
--- a/src/game-server/map.h
+++ b/src/game-server/map.h
@@ -80,8 +80,8 @@ class MapObject
mProperties.insert(key, value);
}
- std::string getProperty(const std::string &key) const
- { return mProperties.find(key); }
+ const std::string &getProperty(const std::string &key) const
+ { return mProperties.value(key); }
const std::string &getName() const
{ return mName; }
diff --git a/src/game-server/monstermanager.cpp b/src/game-server/monstermanager.cpp
index b7efd003..0f1686ca 100644
--- a/src/game-server/monstermanager.cpp
+++ b/src/game-server/monstermanager.cpp
@@ -350,7 +350,7 @@ void MonsterManager::deinitialize()
MonsterClass *MonsterManager::getMonsterByName(const std::string &name) const
{
- return mMonsterClassesByName.find(name);
+ return mMonsterClassesByName.value(name);
}
MonsterClass *MonsterManager::getMonster(int id) const
diff --git a/src/game-server/skillmanager.cpp b/src/game-server/skillmanager.cpp
index be6eef4b..0ed327b1 100644
--- a/src/game-server/skillmanager.cpp
+++ b/src/game-server/skillmanager.cpp
@@ -171,7 +171,7 @@ unsigned int SkillManager::getId(const std::string& set,
const std::string &name) const
{
std::string key = utils::toLower(set) + "_" + utils::toLower(name);
- SkillInfo *skillInfo = mNamedSkillsInfo.find(key);
+ SkillInfo *skillInfo = mNamedSkillsInfo.value(key);
return skillInfo ? skillInfo->id : 0;
}
diff --git a/src/utils/string.h b/src/utils/string.h
index 3b05c371..a21081d5 100644
--- a/src/utils/string.h
+++ b/src/utils/string.h
@@ -90,15 +90,19 @@ namespace utils
template<typename T> class NameMap
{
public:
+ NameMap()
+ : mDefault()
+ {}
+
void insert(const std::string &name, T value)
{
mMap.insert(std::make_pair(toLower(name), value));
}
- T find(const std::string &name) const
+ const T &value(const std::string &name) const
{
typename Map::const_iterator result = mMap.find(toLower(name));
- return result != mMap.end() ? result->second : T();
+ return result != mMap.end() ? result->second : mDefault;
}
bool contains(const std::string &name) const
@@ -113,7 +117,9 @@ namespace utils
private:
typedef std::map<std::string, T> Map;
+
Map mMap;
+ const T mDefault;
};
} // namespace utils