summaryrefslogtreecommitdiff
path: root/src/game-server/itemmanager.cpp
diff options
context:
space:
mode:
authorPhilipp Sehmisch <crush@themanaworld.org>2009-12-28 00:47:49 +0100
committerPhilipp Sehmisch <crush@themanaworld.org>2009-12-28 00:47:49 +0100
commit61420bdc4aa951e6b57a1b6bec37729e1cb1824e (patch)
treec95a5becf48280c215b1f1c98b53e617709d637d /src/game-server/itemmanager.cpp
parentedcc60717dd6d3765e9c48ca469df0fa91c259d3 (diff)
downloadmanaserv-61420bdc4aa951e6b57a1b6bec37729e1cb1824e.tar.gz
manaserv-61420bdc4aa951e6b57a1b6bec37729e1cb1824e.tar.bz2
manaserv-61420bdc4aa951e6b57a1b6bec37729e1cb1824e.tar.xz
manaserv-61420bdc4aa951e6b57a1b6bec37729e1cb1824e.zip
Added support for skill names as weapon types in items.xml (still hardcoded)
Diffstat (limited to 'src/game-server/itemmanager.cpp')
-rw-r--r--src/game-server/itemmanager.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/game-server/itemmanager.cpp b/src/game-server/itemmanager.cpp
index 8abf857f..a53327eb 100644
--- a/src/game-server/itemmanager.cpp
+++ b/src/game-server/itemmanager.cpp
@@ -26,6 +26,7 @@
#include "defines.h"
#include "game-server/item.hpp"
#include "game-server/resourcemanager.hpp"
+#include "game-server/skillmanager.hpp"
#include "scripting/script.hpp"
#include "utils/logger.h"
#include "utils/xml.hpp"
@@ -140,11 +141,14 @@ void ItemManager::reload()
if (itemType == ITEM_EQUIPMENT_ONE_HAND_WEAPON ||
itemType == ITEM_EQUIPMENT_TWO_HANDS_WEAPON)
{
- int weaponType = XML::getProperty(node, "weapon-type", 0);
- if (weaponType == 0)
+ int weaponType = 0;
+ std::string strWeaponType = XML::getProperty(node, "weapon-type", "");
+ if (strWeaponType == "")
{
LOG_WARN(itemReferenceFile<<": Unknown weapon type \""
<<"\" for item #"<<id<<" - treating it as generic item");
+ } else {
+ weaponType = SkillManager::getIdFromString(strWeaponType);
}
modifiers.setValue(MOD_WEAPON_TYPE, weaponType);
modifiers.setValue(MOD_WEAPON_RANGE, XML::getProperty(node, "range", 0));