summaryrefslogtreecommitdiff
path: root/src/game-server/monstermanager.cpp
diff options
context:
space:
mode:
authorErik Schilling <ablu.erikschilling@googlemail.com>2012-07-02 20:48:54 +0200
committerErik Schilling <ablu.erikschilling@googlemail.com>2013-01-08 16:58:57 +0100
commitac9acaa564750c0ce421742de029497ecb02852a (patch)
tree818b62ff4836137fcb35948997070717df789e1f /src/game-server/monstermanager.cpp
parentcf69b4b007e602576208d1beff9852c8bf1acbe9 (diff)
downloadmanaserv-ac9acaa564750c0ce421742de029497ecb02852a.tar.gz
manaserv-ac9acaa564750c0ce421742de029497ecb02852a.tar.bz2
manaserv-ac9acaa564750c0ce421742de029497ecb02852a.tar.xz
manaserv-ac9acaa564750c0ce421742de029497ecb02852a.zip
Added Vulnerabilities for monsters
You can now actually use the already used node in the monsters.xml Monsters can have different vulnerabillities against elements: <vulnerabillity element="earth" factor="2.0" /> This will double damage of the element earth to this monster.
Diffstat (limited to 'src/game-server/monstermanager.cpp')
-rw-r--r--src/game-server/monstermanager.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/game-server/monstermanager.cpp b/src/game-server/monstermanager.cpp
index 0e98f94e..e82a8475 100644
--- a/src/game-server/monstermanager.cpp
+++ b/src/game-server/monstermanager.cpp
@@ -264,6 +264,13 @@ void MonsterManager::initialize()
std::string val = (char *)filename;
monster->setScript(val);
}
+ else if (xmlStrEqual(subnode->name, BAD_CAST "vulnerability"))
+ {
+ Element element = elementFromString(
+ XML::getProperty(subnode, "element", std::string()));
+ double factor = XML::getFloatProperty(subnode, "factor", 1.0);
+ monster->setVulnerability(element, factor);
+ }
}
monster->setDrops(drops);