diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-08-12 21:59:28 +0200 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2013-08-26 22:56:47 +0200 |
commit | 7f79610cdcd5bd55de8d4e413f0679ef634b0a37 (patch) | |
tree | ab1dba698701c80e05eb1076a807f84edb8dd4af /src | |
parent | 3d03f5dee9c67fbbf60e1df940a91842bd8a7e4c (diff) | |
download | manaserv-7f79610cdcd5bd55de8d4e413f0679ef634b0a37.tar.gz manaserv-7f79610cdcd5bd55de8d4e413f0679ef634b0a37.tar.bz2 manaserv-7f79610cdcd5bd55de8d4e413f0679ef634b0a37.tar.xz manaserv-7f79610cdcd5bd55de8d4e413f0679ef634b0a37.zip |
Removed ability categories
Diffstat (limited to 'src')
-rw-r--r-- | src/game-server/abilitycomponent.cpp | 3 | ||||
-rw-r--r-- | src/game-server/abilitymanager.cpp | 57 | ||||
-rw-r--r-- | src/game-server/abilitymanager.h | 17 | ||||
-rw-r--r-- | src/game-server/commandhandler.cpp | 3 | ||||
-rw-r--r-- | src/game-server/settingsmanager.cpp | 4 | ||||
-rw-r--r-- | src/scripting/lua.cpp | 17 |
6 files changed, 9 insertions, 92 deletions
diff --git a/src/game-server/abilitycomponent.cpp b/src/game-server/abilitycomponent.cpp index d3154490..e8113e67 100644 --- a/src/game-server/abilitycomponent.cpp +++ b/src/game-server/abilitycomponent.cpp @@ -42,7 +42,7 @@ void AbilityComponent::update(Entity &entity) if (!ability.recharged && ability.rechargeTimeout.expired()) { ability.recharged = true; - if (ability.abilityInfo->rechargedCallback) { + if (ability.abilityInfo->rechargedCallback.isValid()) { Script *script = ScriptManager::currentState(); script->prepare(ability.abilityInfo->rechargedCallback); script->push(&entity); @@ -95,7 +95,6 @@ bool AbilityComponent::abilityUseCheck(AbilityMap::iterator it) if (!ability.abilityInfo->useCallback.isValid()) { LOG_WARN("No callback for use of ability " - << ability.abilityInfo->categoryName << "/" << ability.abilityInfo->name << ". Ignoring ability."); return false; } diff --git a/src/game-server/abilitymanager.cpp b/src/game-server/abilitymanager.cpp index b03c0828..3e923800 100644 --- a/src/game-server/abilitymanager.cpp +++ b/src/game-server/abilitymanager.cpp @@ -36,32 +36,6 @@ static AbilityManager::TargetMode getTargetByString(const std::string &str) return AbilityManager::TARGET_BEING; } - -/** - * Read a <special> element from settings. - * Used by SettingsManager. - */ -void AbilityManager::readAbilityCategoryNode(xmlNodePtr node, - const std::string &filename) -{ - std::string categoryName = XML::getProperty(node, "name", std::string()); - if (categoryName.empty()) - { - LOG_WARN("The " << filename << " file contains unamed " - << "<ability-category> tags and will be ignored."); - return; - } - - categoryName = utils::toLower(categoryName); - - for_each_xml_child_node(specialNode, node) - { - if (xmlStrEqual(specialNode->name, BAD_CAST "ability")) { - readAbilityNode(specialNode, categoryName); - } - } -} - /** * Check the status of recently loaded configuration. */ @@ -70,9 +44,8 @@ void AbilityManager::checkStatus() LOG_INFO("Loaded " << mAbilitiesInfo.size() << " abilities"); } - void AbilityManager::readAbilityNode(xmlNodePtr abilityNode, - const std::string &categoryName) + const std::string &filename) { std::string name = utils::toLower( XML::getProperty(abilityNode, "name", std::string())); @@ -80,8 +53,7 @@ void AbilityManager::readAbilityNode(xmlNodePtr abilityNode, if (id <= 0 || name.empty()) { - LOG_WARN("Invalid ability (empty name or id <= 0) in category: " - << categoryName); + LOG_WARN("Invalid ability (empty name or id <= 0) in " << filename); return; } @@ -97,7 +69,6 @@ void AbilityManager::readAbilityNode(xmlNodePtr abilityNode, } AbilityInfo *newInfo = new AbilityManager::AbilityInfo; - newInfo->categoryName = categoryName; newInfo->name = name; newInfo->id = id; @@ -106,8 +77,7 @@ void AbilityManager::readAbilityNode(xmlNodePtr abilityNode, mAbilitiesInfo[newInfo->id] = newInfo; - std::string keyName = categoryName + "/" + newInfo->name; - mNamedAbilitiesInfo[keyName] = newInfo; + mNamedAbilitiesInfo[name] = newInfo; } void AbilityManager::initialize() @@ -131,13 +101,6 @@ void AbilityManager::clear() mNamedAbilitiesInfo.clear(); } -unsigned AbilityManager::getId(const std::string &category, - const std::string &name) const -{ - std::string key = utils::toLower(category) + "/" + utils::toLower(name); - return getId(key); -} - unsigned AbilityManager::getId(const std::string &abilityName) const { if (mNamedAbilitiesInfo.contains(abilityName)) @@ -152,12 +115,6 @@ const std::string AbilityManager::getAbilityName(int id) const return it != mAbilitiesInfo.end() ? it->second->name : ""; } -const std::string AbilityManager::getCategoryName(int id) const -{ - AbilitiesInfo::const_iterator it = mAbilitiesInfo.find(id); - return it != mAbilitiesInfo.end() ? it->second->categoryName : ""; -} - AbilityManager::AbilityInfo *AbilityManager::getAbilityInfo(int id) const { AbilitiesInfo::const_iterator it = mAbilitiesInfo.find(id); @@ -165,14 +122,6 @@ AbilityManager::AbilityInfo *AbilityManager::getAbilityInfo(int id) const } AbilityManager::AbilityInfo *AbilityManager::getAbilityInfo( - const std::string &category, - const std::string &name) const -{ - std::string key = utils::toLower(category) + "/" + utils::toLower(name); - return getAbilityInfo(key); -} - -AbilityManager::AbilityInfo *AbilityManager::getAbilityInfo( const std::string &abilityName) const { if (mNamedAbilitiesInfo.contains(abilityName)) diff --git a/src/game-server/abilitymanager.h b/src/game-server/abilitymanager.h index ef16c230..573db415 100644 --- a/src/game-server/abilitymanager.h +++ b/src/game-server/abilitymanager.h @@ -47,7 +47,6 @@ public: unsigned id; std::string name; - std::string categoryName; TargetMode target; Script::Ref rechargedCallback; Script::Ref useCallback; @@ -70,38 +69,26 @@ public: void reload(); /** - * Gets the abilities Id from a category and a ability string. - */ - unsigned getId(const std::string &category, const std::string &name) const; - - /** * Gets the abilities Id from a string formatted in this way: * "categoryname_skillname" */ unsigned getId(const std::string &abilityName) const; const std::string getAbilityName(int id) const; - const std::string getCategoryName(int id) const; AbilityInfo *getAbilityInfo(int id) const; - AbilityInfo *getAbilityInfo(const std::string &category, - const std::string &name) const; AbilityInfo *getAbilityInfo(const std::string &abilityName) const; - - void readAbilityCategoryNode(xmlNodePtr node, const std::string &filename); - void checkStatus(); + void readAbilityNode(xmlNodePtr skillNode, const std::string &filename); + private: /** * Clears up the ability maps. */ void clear(); - void readAbilityNode(xmlNodePtr skillNode, - const std::string &categoryName); - typedef std::map<unsigned, AbilityInfo*> AbilitiesInfo; AbilitiesInfo mAbilitiesInfo; typedef utils::NameMap<AbilityInfo*> NamedAbilitiesInfo; diff --git a/src/game-server/commandhandler.cpp b/src/game-server/commandhandler.cpp index a426a144..4c2adad3 100644 --- a/src/game-server/commandhandler.cpp +++ b/src/game-server/commandhandler.cpp @@ -1702,8 +1702,7 @@ static void handleListAbility(Entity *player, std::string &args) { const AbilityValue &info = abilityIt.second; std::stringstream str; - str << info.abilityInfo->id << ": " << info.abilityInfo->categoryName - << "/" << info.abilityInfo->name; + str << info.abilityInfo->id << ": " << info.abilityInfo->name; say(str.str(), player); } } diff --git a/src/game-server/settingsmanager.cpp b/src/game-server/settingsmanager.cpp index 29c4f214..d6e5e564 100644 --- a/src/game-server/settingsmanager.cpp +++ b/src/game-server/settingsmanager.cpp @@ -135,10 +135,10 @@ void SettingsManager::loadFile(const std::string &filename) // attribute config attributeManager->readAttributeNode(childNode); } - else if (xmlStrEqual(childNode->name, BAD_CAST "ability-category")) + else if (xmlStrEqual(childNode->name, BAD_CAST "ability")) { // ability config - abilityManager->readAbilityCategoryNode(childNode, filename); + abilityManager->readAbilityNode(childNode, filename); } else if (xmlStrEqual(childNode->name, BAD_CAST "slot")) { diff --git a/src/scripting/lua.cpp b/src/scripting/lua.cpp index c8c9e17c..759ae50b 100644 --- a/src/scripting/lua.cpp +++ b/src/scripting/lua.cpp @@ -2907,22 +2907,6 @@ static int abilityinfo_on_recharged(lua_State *s) return 0; } -/** LUA abilityinfo:category (abilityinfo) - * abilityinfo:category(function callback) - ** - * **Return value:** The set-name of the ability as defined in the - * [abilities.xml](abilities.xml.html) - * - * **Note:** See [get_ability_info](scripting.html#get_ability_info) for getting - * a abilityinfo object. - */ -static int abilitiyinfo_get_category(lua_State *s) -{ - auto *info = LuaAbilityInfo::check(s, 1); - push(s, info->categoryName); - return 1; -} - /** LUA_CATEGORY Status effect class (statuseffectclass) */ @@ -3439,7 +3423,6 @@ LuaScript::LuaScript(): { "name", abilityinfo_get_name }, { "on_use", abilityinfo_on_use }, { "on_recharged", abilityinfo_on_recharged }, - { "category", abilitiyinfo_get_category }, { nullptr, nullptr} }; |