X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fcontent_nodemeta.h;h=907649b5fa7b7941d9f639a399c2cf8d0517b716;hb=2bb559be826f4f82b56fb7916e206df55337c258;hp=e20334312fd8a12d1a1a1cc5b8efe1c183f0d1ff;hpb=061d4b420206c67fb346d75fb6bcaf4aa8147ca8;p=minetest.git diff --git a/src/content_nodemeta.h b/src/content_nodemeta.h index e20334312..907649b5f 100644 --- a/src/content_nodemeta.h +++ b/src/content_nodemeta.h @@ -1,18 +1,18 @@ /* -Minetest-c55 -Copyright (C) 2010-2011 celeron55, Perttu Ahola +Minetest +Copyright (C) 2010-2013 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 +it under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 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. +GNU Lesser General Public License for more details. -You should have received a copy of the GNU General Public License along +You should have received a copy of the GNU Lesser 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. */ @@ -21,96 +21,17 @@ with this program; if not, write to the Free Software Foundation, Inc., #define CONTENT_NODEMETA_HEADER #include "nodemetadata.h" +#include "nodetimer.h" -class Inventory; - -class SignNodeMetadata : public NodeMetadata -{ -public: - SignNodeMetadata(std::string text); - //~SignNodeMetadata(); - - virtual u16 typeId() const; - static NodeMetadata* create(std::istream &is); - virtual NodeMetadata* clone(); - virtual void serializeBody(std::ostream &os); - virtual std::string infoText(); - - std::string getText(){ return m_text; } - void setText(std::string t){ m_text = t; } - -private: - std::string m_text; -}; - -class ChestNodeMetadata : public NodeMetadata -{ -public: - ChestNodeMetadata(); - ~ChestNodeMetadata(); - - virtual u16 typeId() const; - static NodeMetadata* create(std::istream &is); - virtual NodeMetadata* clone(); - virtual void serializeBody(std::ostream &os); - virtual std::string infoText(); - virtual Inventory* getInventory() {return m_inventory;} - virtual bool nodeRemovalDisabled(); - virtual std::string getInventoryDrawSpecString(); - -private: - Inventory *m_inventory; -}; - -class LockingChestNodeMetadata : public NodeMetadata -{ -public: - LockingChestNodeMetadata(); - ~LockingChestNodeMetadata(); - - virtual u16 typeId() const; - static NodeMetadata* create(std::istream &is); - virtual NodeMetadata* clone(); - virtual void serializeBody(std::ostream &os); - virtual std::string infoText(); - virtual Inventory* getInventory() {return m_inventory;} - virtual bool nodeRemovalDisabled(); - virtual std::string getInventoryDrawSpecString(); - - virtual std::string getOwner(){ return m_text; } - virtual void setOwner(std::string t){ m_text = t; } - -private: - Inventory *m_inventory; - std::string m_text; -}; - -class FurnaceNodeMetadata : public NodeMetadata -{ -public: - FurnaceNodeMetadata(); - ~FurnaceNodeMetadata(); - - virtual u16 typeId() const; - virtual NodeMetadata* clone(); - static NodeMetadata* create(std::istream &is); - virtual void serializeBody(std::ostream &os); - virtual std::string infoText(); - virtual Inventory* getInventory() {return m_inventory;} - virtual void inventoryModified(); - virtual bool step(float dtime); - virtual bool nodeRemovalDisabled(); - virtual std::string getInventoryDrawSpecString(); +/* + Legacy nodemeta definitions +*/ -private: - Inventory *m_inventory; - float m_step_accumulator; - float m_fuel_totaltime; - float m_fuel_time; - float m_src_totaltime; - float m_src_time; -}; +void content_nodemeta_deserialize_legacy(std::istream &is, + NodeMetadataList *meta, NodeTimerList *timers, + IGameDef *gamedef); +void content_nodemeta_serialize_legacy(std::ostream &os, NodeMetadataList *meta); #endif