summaryrefslogtreecommitdiff
path: root/src/road_cmd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/road_cmd.cpp')
-rw-r--r--src/road_cmd.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp
index e56633696..e7cfa2382 100644
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -246,12 +246,11 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
}
/* Mark tiles dirty that have been repaved */
- MarkTileDirtyByTile(tile);
- MarkTileDirtyByTile(other_end);
if (IsBridge(tile)) {
- TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile));
-
- for (TileIndex t = tile + delta; t != other_end; t += delta) MarkTileDirtyByTile(t);
+ MarkBridgeDirty(tile);
+ } else {
+ MarkTileDirtyByTile(tile);
+ MarkTileDirtyByTile(other_end);
}
}
} else {
@@ -747,12 +746,11 @@ do_clear:;
SetRoadOwner(tile, rt, company);
/* Mark tiles dirty that have been repaved */
- MarkTileDirtyByTile(other_end);
- MarkTileDirtyByTile(tile);
if (IsBridge(tile)) {
- TileIndexDiff delta = TileOffsByDiagDir(GetTunnelBridgeDirection(tile));
-
- for (TileIndex t = tile + delta; t != other_end; t += delta) MarkTileDirtyByTile(t);
+ MarkBridgeDirty(tile);
+ } else {
+ MarkTileDirtyByTile(other_end);
+ MarkTileDirtyByTile(tile);
}
break;
}