summaryrefslogtreecommitdiff
path: root/src/rail_cmd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rail_cmd.cpp')
-rw-r--r--src/rail_cmd.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp
index 8e1e0ba5d..673ad404f 100644
--- a/src/rail_cmd.cpp
+++ b/src/rail_cmd.cpp
@@ -1772,7 +1772,12 @@ static void DrawTile_Track(TileInfo *ti)
if (ti->tileh != SLOPE_FLAT) DrawFoundation(ti, FOUNDATION_LEVELED);
if (IsRailDepot(ti->tile)) {
- dts = &_depot_gfx_table[GetRailDepotDirection(ti->tile)];
+ if (IsInvisibilitySet(TO_BUILDINGS)) {
+ /* Draw rail instead of depot */
+ dts = &_depot_invisible_gfx_table[GetRailDepotDirection(ti->tile)];
+ } else {
+ dts = &_depot_gfx_table[GetRailDepotDirection(ti->tile)];
+ }
relocation = rti->total_offset;
@@ -1836,6 +1841,9 @@ default_waypoint:
if (HasCatenary(GetRailType(ti->tile))) DrawCatenary(ti);
+ /* End now if buildings are invisible */
+ if (IsInvisibilitySet(TO_BUILDINGS)) return;
+
foreach_draw_tile_seq(dtss, dts->seq) {
SpriteID image = dtss->image.sprite;
SpriteID pal;