diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-06-18 00:46:50 +0300 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-06-18 00:46:50 +0300 |
commit | da692355e84f8d1e5210c3c89daf775cf23ec38b (patch) | |
tree | 9298dad19f545fd5496a994e186027de589cb934 /src/content_nodemeta.h | |
parent | e7580d2804d29afb486f4eb2bd4dfb94f7181824 (diff) | |
download | hax-minetest-server-da692355e84f8d1e5210c3c89daf775cf23ec38b.tar.gz hax-minetest-server-da692355e84f8d1e5210c3c89daf775cf23ec38b.zip |
Created and moved stuff to content_nodemeta.{h,cpp}
Diffstat (limited to 'src/content_nodemeta.h')
-rw-r--r-- | src/content_nodemeta.h | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/src/content_nodemeta.h b/src/content_nodemeta.h new file mode 100644 index 000000000..ed5d5f24e --- /dev/null +++ b/src/content_nodemeta.h @@ -0,0 +1,91 @@ +/* +Minetest-c55 +Copyright (C) 2010-2011 celeron55, Perttu Ahola <celeron55@gmail.com> + +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. +*/ + +#ifndef CONTENT_NODEMETA_HEADER +#define CONTENT_NODEMETA_HEADER + +#include "nodemetadata.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(); + +private: + Inventory *m_inventory; +}; + +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); + +private: + Inventory *m_inventory; + float m_step_accumulator; + float m_fuel_totaltime; + float m_fuel_time; + float m_src_totaltime; + float m_src_time; +}; + + +#endif + |