From b9bc8dadb2ebdfdc05b1e3709c6173571de21efc Mon Sep 17 00:00:00 2001
From: Kodexky <kodexky@gmail.com>
Date: Thu, 20 Nov 2014 15:40:26 +1000
Subject: [PATCH] Fix raillike bug (currently manifests itself on Android), and
 minor improvement to readability.

NB: Minor edits to patch made by Zeno- (int to short and minor formatting)
---
 src/content_mapblock.cpp | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/content_mapblock.cpp b/src/content_mapblock.cpp
index 2584c0779..378a344a4 100644
--- a/src/content_mapblock.cpp
+++ b/src/content_mapblock.cpp
@@ -1621,17 +1621,18 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
 			video::SColor c = MapBlock_LightColor(255, l, f.light_source);
 
 			float d = (float)BS/64;
-			
-			char g=-1;
+			float s = BS/2;
+
+			short g = -1;
 			if (is_rail_x_plus_y[0] || is_rail_x_plus_y[1] || is_rail_z_plus_y[0] || is_rail_z_plus_y[1])
-				g=1; //Object is at a slope
+				g = 1; //Object is at a slope
 
 			video::S3DVertex vertices[4] =
 			{
-					video::S3DVertex(-BS/2,-BS/2+d,-BS/2, 0,0,0, c, 0,1),
-					video::S3DVertex(BS/2,-BS/2+d,-BS/2, 0,0,0, c, 1,1),
-					video::S3DVertex(BS/2,g*BS/2+d,BS/2, 0,0,0, c, 1,0),
-					video::S3DVertex(-BS/2,g*BS/2+d,BS/2, 0,0,0, c, 0,0),
+					video::S3DVertex(-s,  -s+d,-s,  0,0,0,  c,0,1),
+					video::S3DVertex( s,  -s+d,-s,  0,0,0,  c,1,1),
+					video::S3DVertex( s, g*s+d, s,  0,0,0,  c,1,0),
+					video::S3DVertex(-s, g*s+d, s,  0,0,0,  c,0,0),
 			};
 
 			for(s32 i=0; i<4; i++)
-- 
GitLab