diff options
author | Tiger Wang <ziwei.tiger@outlook.com> | 2020-09-20 15:50:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-20 15:50:52 +0200 |
commit | 68cced73afe546328cf94ed07c57deee47bfadec (patch) | |
tree | 88be88e3fd4a208b9849e526f1877caa44058ab5 /src/Blocks/BlockTripwireHook.h | |
parent | Added armor and shulker box cleaning (#4875) (diff) | |
download | cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar.gz cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar.bz2 cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar.lz cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar.xz cuberite-68cced73afe546328cf94ed07c57deee47bfadec.tar.zst cuberite-68cced73afe546328cf94ed07c57deee47bfadec.zip |
Diffstat (limited to 'src/Blocks/BlockTripwireHook.h')
-rw-r--r-- | src/Blocks/BlockTripwireHook.h | 39 |
1 files changed, 15 insertions, 24 deletions
diff --git a/src/Blocks/BlockTripwireHook.h b/src/Blocks/BlockTripwireHook.h index f28b94b46..466ca2502 100644 --- a/src/Blocks/BlockTripwireHook.h +++ b/src/Blocks/BlockTripwireHook.h @@ -14,14 +14,21 @@ class cBlockTripwireHookHandler : public: - cBlockTripwireHookHandler(BLOCKTYPE a_BlockType): - Super(a_BlockType) + using Super::Super; + + inline static eBlockFace MetadataToDirection(NIBBLETYPE a_Meta) { + switch (a_Meta & 0x03) + { + case 0x1: return BLOCK_FACE_XM; + case 0x3: return BLOCK_FACE_XP; + case 0x2: return BLOCK_FACE_ZM; + case 0x0: return BLOCK_FACE_ZP; + default: ASSERT(!"Unhandled tripwire hook metadata!"); return BLOCK_FACE_NONE; + } } - - - +private: virtual bool GetPlacementBlockTypeMeta( cChunkInterface & a_ChunkInterface, @@ -30,7 +37,7 @@ public: eBlockFace a_ClickedBlockFace, const Vector3i a_CursorPos, BLOCKTYPE & a_BlockType, NIBBLETYPE & a_BlockMeta - ) override + ) const override { a_BlockType = m_BlockType; @@ -71,23 +78,7 @@ public: - inline static eBlockFace MetadataToDirection(NIBBLETYPE a_Meta) - { - switch (a_Meta & 0x03) - { - case 0x1: return BLOCK_FACE_XM; - case 0x3: return BLOCK_FACE_XP; - case 0x2: return BLOCK_FACE_ZM; - case 0x0: return BLOCK_FACE_ZP; - default: ASSERT(!"Unhandled tripwire hook metadata!"); return BLOCK_FACE_NONE; - } - } - - - - - - virtual bool CanBeAt(cChunkInterface & a_ChunkInterface, const Vector3i a_RelPos, const cChunk & a_Chunk) override + virtual bool CanBeAt(cChunkInterface & a_ChunkInterface, const Vector3i a_RelPos, const cChunk & a_Chunk) const override { const auto Meta = a_Chunk.GetMeta(a_RelPos); const auto RearPosition = AddFaceDirection(a_RelPos, MetadataToDirection(Meta), true); @@ -105,7 +96,7 @@ public: - virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) override + virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) const override { UNUSED(a_Meta); return 0; |