diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-12-04 02:12:45 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-12-04 02:12:45 +0200 |
commit | 6145a135bd71425c69d31e6c65112238e08349a5 (patch) | |
tree | dc1b839ebd4b35cb84a14b95d339843c11e75bf1 /src/tooldef.cpp | |
parent | 97c3bc408be0636b5821b7792957d18272e8f7bb (diff) | |
download | minetest-6145a135bd71425c69d31e6c65112238e08349a5.tar.gz minetest-6145a135bd71425c69d31e6c65112238e08349a5.tar.bz2 minetest-6145a135bd71425c69d31e6c65112238e08349a5.zip |
Make ToolItem and MaterialItem to convert names by aliases at creation time too (necessary for eg. crafting)
Diffstat (limited to 'src/tooldef.cpp')
-rw-r--r-- | src/tooldef.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/tooldef.cpp b/src/tooldef.cpp index 3b7863ba1..7d7eceab0 100644 --- a/src/tooldef.cpp +++ b/src/tooldef.cpp @@ -96,12 +96,7 @@ public: virtual const ToolDefinition* getToolDefinition(const std::string &toolname_) const { // Convert name according to possible alias - std::string toolname = toolname_; - std::map<std::string, std::string>::const_iterator i; - i = m_aliases.find(toolname); - if(i != m_aliases.end()){ - toolname = i->second; - } + std::string toolname = getAlias(toolname_); // Get the definition core::map<std::string, ToolDefinition*>::Node *n; n = m_tool_definitions.find(toolname); @@ -130,6 +125,15 @@ public: } return def->properties; } + virtual std::string getAlias(const std::string &name) const + { + std::map<std::string, std::string>::const_iterator i; + i = m_aliases.find(name); + if(i != m_aliases.end()) + return i->second; + return name; + } + // IWritableToolDefManager virtual bool registerTool(std::string toolname, const ToolDefinition &def) { infostream<<"registerTool: registering tool \""<<toolname<<"\""<<std::endl; |