summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormichi_cc <michi_cc@openttd.org>2011-08-22 12:41:24 +0000
committermichi_cc <michi_cc@openttd.org>2011-08-22 12:41:24 +0000
commit9c73f15cdeb044ae83a116d14ece3188d4868a3c (patch)
tree746e9c14e9b4394cd6992c50437b0e66ba38a8f7 /src
parent4c030468e13bfb113a8672a80a27efc7e1fa325f (diff)
downloadopenttd-9c73f15cdeb044ae83a116d14ece3188d4868a3c.tar.xz
(svn r22810) -Fix: Growth a town on both ends of a tunnel/bridge if the town centre tile is a bridge ramp/tunnel portal.
Diffstat (limited to 'src')
-rw-r--r--src/town_cmd.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp
index e98079db5..ddbe9127e 100644
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -1110,9 +1110,10 @@ static void GrowTownInTile(TileIndex *tile_ptr, RoadBits cur_rb, DiagDirection t
} else {
bool allow_house = true; // Value which decides if we want to construct a house
- /* Reached a tunnel/bridge? Then continue at the other side of it. */
+ /* Reached a tunnel/bridge? Then continue at the other side of it, unless
+ * it is the starting tile. Half the time, we stay on this side then.*/
if (IsTileType(tile, MP_TUNNELBRIDGE)) {
- if (GetTunnelBridgeTransportType(tile) == TRANSPORT_ROAD) {
+ if (GetTunnelBridgeTransportType(tile) == TRANSPORT_ROAD && (target_dir != DIAGDIR_END || Chance16(1, 2))) {
*tile_ptr = GetOtherTunnelBridgeEnd(tile);
}
return;