diff options
author | madmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2013-06-12 10:22:34 +0200 |
---|---|---|
committer | madmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6> | 2013-06-12 10:22:34 +0200 |
commit | 007e75de9defc3d96ac61400fa983da812b4b15e (patch) | |
tree | df77165a9f41881d373ec08e5c336c899f387481 /source/Blocks/BlockHopper.h | |
parent | Added cWorld::SetSignLines(), re-exported to Lua manually to avoid ghost return values (diff) | |
download | cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar.gz cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar.bz2 cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar.lz cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar.xz cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.tar.zst cuberite-007e75de9defc3d96ac61400fa983da812b4b15e.zip |
Diffstat (limited to '')
-rw-r--r-- | source/Blocks/BlockHopper.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/source/Blocks/BlockHopper.h b/source/Blocks/BlockHopper.h new file mode 100644 index 000000000..10f865564 --- /dev/null +++ b/source/Blocks/BlockHopper.h @@ -0,0 +1,46 @@ +
+// BlockHopper.h
+
+// Declares the cBlockHopperHandler class representing the handler for the Hopper block
+
+
+
+
+
+class cBlockHopperHandler :
+ public cBlockEntityHandler
+{
+public:
+ cBlockHopperHandler(BLOCKTYPE a_BlockType)
+ : cBlockEntityHandler(a_BlockType)
+ {
+ }
+
+
+ virtual bool GetPlacementBlockTypeMeta(
+ cWorld * a_World, cPlayer * a_Player,
+ int a_BlockX, int a_BlockY, int a_BlockZ, char a_BlockFace,
+ int a_CursorX, int a_CursorY, int a_CursorZ,
+ BLOCKTYPE & a_BlockType, NIBBLETYPE & a_BlockMeta
+ ) override
+ {
+ a_BlockType = m_BlockType;
+
+ // Convert the blockface into meta:
+ switch (a_BlockFace)
+ {
+ case BLOCK_FACE_BOTTOM: a_BlockMeta = E_META_HOPPER_FACING_YM; break;
+ case BLOCK_FACE_TOP: a_BlockMeta = E_META_HOPPER_FACING_YM; break;
+ case BLOCK_FACE_EAST: a_BlockMeta = E_META_HOPPER_FACING_XM; break;
+ case BLOCK_FACE_NORTH: a_BlockMeta = E_META_HOPPER_FACING_ZP; break;
+ case BLOCK_FACE_SOUTH: a_BlockMeta = E_META_HOPPER_FACING_ZM; break;
+ case BLOCK_FACE_WEST: a_BlockMeta = E_META_HOPPER_FACING_XP; break;
+ default: a_BlockMeta = E_META_HOPPER_UNATTACHED; break;
+ }
+ return true;
+ }
+} ;
+
+
+
+
|