summaryrefslogtreecommitdiffstats
path: root/src/Blocks/BlockDoor.cpp
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-03-07 14:45:45 +0100
committerMattes D <github@xoft.cz>2014-03-07 14:45:45 +0100
commitc1977035cfa6be57d50ec58aee7b5abe10b79ae7 (patch)
tree247b57eb23e423f934389190f17b44fdb261b99c /src/Blocks/BlockDoor.cpp
parentRewound PolarSSL to master branch. (diff)
parentFix comment (diff)
downloadcuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar.gz
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar.bz2
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar.lz
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar.xz
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.tar.zst
cuberite-c1977035cfa6be57d50ec58aee7b5abe10b79ae7.zip
Diffstat (limited to 'src/Blocks/BlockDoor.cpp')
-rw-r--r--src/Blocks/BlockDoor.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/Blocks/BlockDoor.cpp b/src/Blocks/BlockDoor.cpp
index 2ff5c1c37..0acf04852 100644
--- a/src/Blocks/BlockDoor.cpp
+++ b/src/Blocks/BlockDoor.cpp
@@ -55,6 +55,29 @@ void cBlockDoorHandler::OnUse(cChunkInterface & a_ChunkInterface, cWorldInterfac
+void cBlockDoorHandler::OnCancelRightClick(cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cPlayer * a_Player, int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace)
+{
+ UNUSED(a_ChunkInterface);
+
+ a_WorldInterface.SendBlockTo(a_BlockX, a_BlockY, a_BlockZ, a_Player);
+ NIBBLETYPE Meta = a_ChunkInterface.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ);
+
+ if (Meta & 8)
+ {
+ // Current block is top of the door
+ a_WorldInterface.SendBlockTo(a_BlockX, a_BlockY - 1, a_BlockZ, a_Player);
+ }
+ else
+ {
+ // Current block is bottom of the door
+ a_WorldInterface.SendBlockTo(a_BlockX, a_BlockY + 1, a_BlockZ, a_Player);
+ }
+}
+
+
+
+
+
void cBlockDoorHandler::OnPlacedByPlayer(
cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cPlayer * a_Player,
int a_BlockX, int a_BlockY, int a_BlockZ, eBlockFace a_BlockFace,