summaryrefslogtreecommitdiffstats
path: root/source/Blocks/BlockStairs.h
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-06-04 21:22:14 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2013-06-04 21:22:14 +0200
commit3ee523628465a59070354781cda6585f6778192c (patch)
tree0ef22389cfc7738fd79a02b11e1bc33a63f28b09 /source/Blocks/BlockStairs.h
parentExpat project: fixed intermediate files output folder (diff)
downloadcuberite-3ee523628465a59070354781cda6585f6778192c.tar
cuberite-3ee523628465a59070354781cda6585f6778192c.tar.gz
cuberite-3ee523628465a59070354781cda6585f6778192c.tar.bz2
cuberite-3ee523628465a59070354781cda6585f6778192c.tar.lz
cuberite-3ee523628465a59070354781cda6585f6778192c.tar.xz
cuberite-3ee523628465a59070354781cda6585f6778192c.tar.zst
cuberite-3ee523628465a59070354781cda6585f6778192c.zip
Diffstat (limited to '')
-rw-r--r--source/Blocks/BlockStairs.h30
1 files changed, 28 insertions, 2 deletions
diff --git a/source/Blocks/BlockStairs.h b/source/Blocks/BlockStairs.h
index c85d07c00..6fc316e45 100644
--- a/source/Blocks/BlockStairs.h
+++ b/source/Blocks/BlockStairs.h
@@ -2,7 +2,6 @@
#pragma once
#include "BlockHandler.h"
-#include "../Stairs.h"
@@ -27,7 +26,7 @@ public:
) override
{
a_BlockType = m_BlockType;
- a_BlockMeta = cStairs::RotationToMetaData(a_Player->GetRotation());
+ a_BlockMeta = RotationToMetaData(a_Player->GetRotation());
switch (a_BlockFace)
{
case BLOCK_FACE_TOP: break;
@@ -51,6 +50,33 @@ public:
// TODO: step sound
+ static NIBBLETYPE RotationToMetaData(double a_Rotation)
+ {
+ a_Rotation += 90 + 45; // So its not aligned with axis
+ NIBBLETYPE result = 0x0;
+ if (a_Rotation > 360)
+ {
+ a_Rotation -= 360;
+ }
+ if ((a_Rotation >= 0) && (a_Rotation < 90))
+ {
+ return 0x0;
+ }
+ else if ((a_Rotation >= 180) && (a_Rotation < 270))
+ {
+ return 0x1;
+ }
+ else if ((a_Rotation >= 90) && (a_Rotation < 180))
+ {
+ return 0x2;
+ }
+ else
+ {
+ return 0x3;
+ }
+ }
+
+
virtual NIBBLETYPE MetaRotateCCW(NIBBLETYPE a_Meta) override
{
// Bits 3 and 4 stay, the rest is swapped around according to a table: