diff --git a/bridge_map.h b/bridge_map.h --- a/bridge_map.h +++ b/bridge_map.h @@ -115,10 +115,15 @@ static inline RoadBits GetRoadBitsUnderB return GetBridgeAxis(t) == AXIS_X ? ROAD_Y : ROAD_X; } +static inline Track GetRailUnderBridge(TileIndex t) +{ + assert(GetTransportTypeUnderBridge(t) == TRANSPORT_RAIL); + return AxisToTrack(OtherAxis(GetBridgeAxis(t))); +} + static inline TrackBits GetRailBitsUnderBridge(TileIndex t) { - assert(GetTransportTypeUnderBridge(t) == TRANSPORT_RAIL); - return GetBridgeAxis(t) == AXIS_X ? TRACK_BIT_Y : TRACK_BIT_X; + return TrackToTrackBits(GetRailUnderBridge(t)); }