summaryrefslogtreecommitdiffstats
path: root/src/Blocks/BlockDoor.cpp
diff options
context:
space:
mode:
authorHowaner <franzi.moos@googlemail.com>2014-03-05 15:10:20 +0100
committerHowaner <franzi.moos@googlemail.com>2014-03-05 15:10:20 +0100
commitd4a5b16c52c41da59d2fe3405570653521e5d36e (patch)
treebbfa7b1b0d7101c9bdf98401c87164def39d4eb2 /src/Blocks/BlockDoor.cpp
parentFixed some gcc warnings in Defines.h. (diff)
downloadcuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar.gz
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar.bz2
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar.lz
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar.xz
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.tar.zst
cuberite-d4a5b16c52c41da59d2fe3405570653521e5d36e.zip
Diffstat (limited to 'src/Blocks/BlockDoor.cpp')
-rw-r--r--src/Blocks/BlockDoor.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/Blocks/BlockDoor.cpp b/src/Blocks/BlockDoor.cpp
index 2ff5c1c37..6c51feab3 100644
--- a/src/Blocks/BlockDoor.cpp
+++ b/src/Blocks/BlockDoor.cpp
@@ -55,6 +55,27 @@ 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)
+{
+ NIBBLETYPE Meta = a_ChunkInterface.GetBlockMeta(a_BlockX, a_BlockY, a_BlockZ);
+ a_Player->GetClientHandle()->SendBlockChange(a_BlockX, a_BlockY, a_BlockZ, m_BlockType, Meta);
+
+ if (Meta & 8)
+ {
+ // Current block is top of the door
+ a_Player->GetWorld()->SendBlockTo(a_BlockX, a_BlockY - 1, a_BlockZ, a_Player);
+ }
+ else
+ {
+ // Current block is bottom of the door
+ a_Player->GetWorld()->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,