--- a/road_map.h Sun Mar 19 16:57:48 2006 +0000
+++ b/road_map.h Sun Mar 19 17:15:33 2006 +0000
@@ -39,14 +39,19 @@
}
+static inline Axis GetCrossingRoadAxis(TileIndex tile)
+{
+ return (Axis)GB(_m[tile].m5, 3, 1);
+}
+
static inline RoadBits GetCrossingRoadBits(TileIndex tile)
{
- return _m[tile].m5 & 8 ? ROAD_Y : ROAD_X;
+ return GetCrossingRoadAxis(tile) == AXIS_X ? ROAD_X : ROAD_Y;
}
static inline TrackBits GetCrossingRailBits(TileIndex tile)
{
- return _m[tile].m5 & 8 ? TRACK_BIT_X : TRACK_BIT_Y;
+ return GetCrossingRoadAxis(tile) == AXIS_X ? TRACK_BIT_Y : TRACK_BIT_X;
}