--- a/src/tunnelbridge_cmd.cpp Sun Feb 17 20:15:20 2008 +0000
+++ b/src/tunnelbridge_cmd.cpp Sun Feb 17 21:27:44 2008 +0000
@@ -663,10 +663,16 @@
/* read this value before actual removal of bridge */
bool rail = GetTunnelBridgeTransportType(tile) == TRANSPORT_RAIL;
Owner owner = GetTileOwner(tile);
+ uint height = GetBridgeHeight(tile);
DoClearSquare(tile);
DoClearSquare(endtile);
for (TileIndex c = tile + delta; c != endtile; c += delta) {
+ /* do not let trees appear from 'nowhere' after removing bridge */
+ if (IsNormalRoadTile(c) && GetRoadside(c) == ROADSIDE_TREES) {
+ uint minz = GetTileMaxZ(c) + 3 * TILE_HEIGHT;
+ if (height < minz) SetRoadside(c, ROADSIDE_PAVED);
+ }
ClearBridgeMiddle(c);
MarkTileDirtyByTile(c);
}