From fca4610f11748814b41b068e14a875b4cdeb6bd4 Mon Sep 17 00:00:00 2001 From: kwolekr Date: Mon, 8 Jul 2013 18:50:29 -0400 Subject: [PATCH] Fix wallmounted rotations along Y axis for 90 and 270 degree cases --- src/mapnode.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/mapnode.cpp b/src/mapnode.cpp index 388818c4..f9323118 100644 --- a/src/mapnode.cpp +++ b/src/mapnode.cpp @@ -31,6 +31,7 @@ with this program; if not, write to the Free Software Foundation, Inc., static const Rotation wallmounted_to_rot[] = { ROTATE_0, ROTATE_180, ROTATE_90, ROTATE_270 }; + static const u8 rot_to_wallmounted[] = { 2, 4, 3, 5 }; @@ -154,7 +155,7 @@ void MapNode::rotateAlongYAxis(INodeDefManager *nodemgr, Rotation rot) { Rotation oldrot = wallmounted_to_rot[wmountface - 2]; param2 &= ~7; - param2 |= rot_to_wallmounted[(oldrot + rot) & 3]; + param2 |= rot_to_wallmounted[(oldrot - rot) & 3]; } }