(svn r7698) -Fix (r7573): towns did not grow beyond bridges.
authorrubidium
Sun, 31 Dec 2006 13:24:44 +0000
changeset 5696 4d40b22a9a96
parent 5695 78c0d75bbb44
child 5697 31d15cfe769a
(svn r7698) -Fix (r7573): towns did not grow beyond bridges.
town_cmd.c
--- a/town_cmd.c	Sun Dec 31 11:42:56 2006 +0000
+++ b/town_cmd.c	Sun Dec 31 13:24:44 2006 +0000
@@ -612,15 +612,16 @@
 	} else {
 		int i;
 
-		// Reached a tunnel? Then continue at the other side of it.
-		if (IsTunnelTile(tile) && GetTunnelTransportType(tile) == TRANSPORT_ROAD) {
-			*tile_ptr = GetOtherTunnelEnd(tile);
+		// Reached a tunnel/bridge? Then continue at the other side of it.
+		if (IsTileType(tile, MP_TUNNELBRIDGE)) {
+			if (IsTunnel(tile) && GetTunnelTransportType(tile) == TRANSPORT_ROAD) {
+				*tile_ptr = GetOtherTunnelEnd(tile);
+			} else if (IsBridge(tile) && GetBridgeTransportType(tile) == TRANSPORT_ROAD) {
+				*tile_ptr = GetOtherBridgeEnd(tile);
+			}
 			return;
 		}
 
-		// For any other kind of tunnel/bridge, bail out.
-		if (IsTileType(tile, MP_TUNNELBRIDGE)) return;
-
 		// Possibly extend the road in a direction.
 		// Randomize a direction and if it has a road, bail out.
 		i = GB(Random(), 0, 2);