From c2b1c624dd0d7909c69ddfba1eb2cf611b22cd25 Mon Sep 17 00:00:00 2001 From: frosch Date: Mon, 9 Aug 2010 07:19:44 +0000 Subject: [PATCH] (svn r20421) -Change [FS#3947]: Make snowyness of bridgehead depend on the tileheight at the entry edge. --- src/tunnelbridge_cmd.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp index 0d064793d0..adb399af86 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -1396,12 +1396,17 @@ static void TileLoop_TunnelBridge(TileIndex tile) { bool snow_or_desert = HasTunnelBridgeSnowOrDesert(tile); switch (_settings_game.game_creation.landscape) { - case LT_ARCTIC: - if (snow_or_desert != (GetTileZ(tile) > GetSnowLine())) { + case LT_ARCTIC: { + /* As long as we do not have a snow density, we want to use the density + * from the entry endge. For tunnels this is the lowest point for bridges the highest point. + * (Independent of foundations) */ + uint z = IsBridge(tile) ? GetTileMaxZ(tile) : GetTileZ(tile); + if (snow_or_desert != (z > GetSnowLine())) { SetTunnelBridgeSnowOrDesert(tile, !snow_or_desert); MarkTileDirtyByTile(tile); } break; + } case LT_TROPIC: if (GetTropicZone(tile) == TROPICZONE_DESERT && !snow_or_desert) {