From 6a76c226e10e92c3e3339096f07f8ab065e2098b Mon Sep 17 00:00:00 2001 From: Kahrl Date: Thu, 12 Jan 2012 06:10:39 +0100 Subject: The huge item definition and item namespace unification patch (itemdef), see http://c55.me/minetest/wiki/doku.php?id=changes:itemdef --- src/tooldef.cpp | 238 -------------------------------------------------------- 1 file changed, 238 deletions(-) delete mode 100644 src/tooldef.cpp (limited to 'src/tooldef.cpp') diff --git a/src/tooldef.cpp b/src/tooldef.cpp deleted file mode 100644 index 7d7eceab0..000000000 --- a/src/tooldef.cpp +++ /dev/null @@ -1,238 +0,0 @@ -/* -Minetest-c55 -Copyright (C) 2011 celeron55, Perttu Ahola - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License along -with this program; if not, write to the Free Software Foundation, Inc., -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include "tooldef.h" -#include "irrlichttypes.h" -#include "log.h" -#include -#include "utility.h" -#include - -ToolDiggingProperties::ToolDiggingProperties(float full_punch_interval_, - float a, float b, float c, float d, float e, - float f, float g, float h, float i, float j): - full_punch_interval(full_punch_interval_), - basetime(a), - dt_weight(b), - dt_crackiness(c), - dt_crumbliness(d), - dt_cuttability(e), - basedurability(f), - dd_weight(g), - dd_crackiness(h), - dd_crumbliness(i), - dd_cuttability(j) -{} - -std::string ToolDefinition::dump() -{ - std::ostringstream os(std::ios::binary); - os<<"[ToolDefinition::dump() not implemented due to lazyness]" - <::Node *n; - n = m_tool_definitions.find(toolname); - if(n == NULL) - return NULL; - return n->getValue(); - } - virtual std::string getImagename(const std::string &toolname) const - { - const ToolDefinition *def = getToolDefinition(toolname); - if(def == NULL) - return ""; - return def->imagename; - } - virtual ToolDiggingProperties getDiggingProperties( - const std::string &toolname) const - { - const ToolDefinition *def = getToolDefinition(toolname); - // If tool does not exist, just return an impossible - if(def == NULL){ - // If tool does not exist, try empty name - const ToolDefinition *def = getToolDefinition(""); - if(def == NULL) // If that doesn't exist either, return default - return ToolDiggingProperties(); - return def->properties; - } - return def->properties; - } - virtual std::string getAlias(const std::string &name) const - { - std::map::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 \""<::Iterator - i = m_tool_definitions.getIterator(); - i.atEnd() == false; i++){ - delete i.getNode()->getValue(); - } - m_tool_definitions.clear(); - m_aliases.clear(); - } - virtual void setAlias(const std::string &name, - const std::string &convert_to) - { - if(getToolDefinition(name) != NULL){ - infostream<<"tdef: not setting alias "< "< "<::Iterator - i = m_tool_definitions.getIterator(); - i.atEnd() == false; i++){ - std::string name = i.getNode()->getKey(); - ToolDefinition *def = i.getNode()->getValue(); - // Serialize name - os<serialize(tmp_os); - os<::const_iterator - i = m_aliases.begin(); i != m_aliases.end(); i++) - { - os<first); - os<second); - } - } - virtual void deSerialize(std::istream &is) - { - // Clear everything - clear(); - // Deserialize - int version = readU8(is); - if(version != 0) throw SerializationError( - "unsupported ToolDefManager version"); - u16 count = readU16(is); - for(u16 i=0; i m_tool_definitions; - // Aliases - std::map m_aliases; -}; - -IWritableToolDefManager* createToolDefManager() -{ - return new CToolDefManager(); -} - -- cgit v1.2.3