diff options
Diffstat (limited to 'Minecraft.World/FurnaceTile.h')
| -rw-r--r-- | Minecraft.World/FurnaceTile.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Minecraft.World/FurnaceTile.h b/Minecraft.World/FurnaceTile.h new file mode 100644 index 00000000..c192f94d --- /dev/null +++ b/Minecraft.World/FurnaceTile.h @@ -0,0 +1,39 @@ +#pragma once +#include "EntityTile.h" + +class Mob; +class Player; +class Random; +class ChunkRebuildData; + +class FurnaceTile : public EntityTile +{ + friend class Tile; + friend class ChunkRebuildData; +private: + Random *random; + bool lit; + static bool noDrop; + Icon *iconTop; + Icon *iconFront; + +protected: + FurnaceTile(int id, bool lit); +public: + virtual int getResource(int data, Random *random, int playerBonusLevel); + virtual void onPlace(Level *level, int x, int y, int z); +private: + void recalcLockDir(Level *level, int x, int y, int z); +public: + Icon *getTexture(int face, int data); + void registerIcons(IconRegister *iconRegister); + virtual void animateTick(Level *level, int xt, int yt, int zt, Random *random); + virtual bool TestUse(); + virtual bool use(Level *level, int x, int y, int z, shared_ptr<Player> player, int clickedFace, float clickX, float clickY, float clickZ, bool soundOnly = false); // 4J added soundOnly param + static void setLit(bool lit, Level *level, int x, int y, int z); +protected: + virtual shared_ptr<TileEntity> newTileEntity(Level *level); +public: + virtual void setPlacedBy(Level *level, int x, int y, int z, shared_ptr<Mob> by); + virtual void onRemove(Level *level, int x, int y, int z, int id, int data); +};
\ No newline at end of file |
