From b3f9121f14e3ea39dd84b8a17d5e22662cb0b885 Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 31 Aug 2007 13:06:28 +0000 Subject: (svn r11015) -Fix [FS#1166]: towns would build bridges through eachother. --- src/town_cmd.cpp | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'src/town_cmd.cpp') diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index 852e4e351..5759189d2 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -1084,19 +1084,17 @@ build_road_and_exit: /* Quit if it selecting an appropiate bridge type fails a large number of times. */ j = 22; - { - int32 bridge_len = GetBridgeLength(tile, tmptile); - do { - byte bridge_type = RandomRange(MAX_BRIDGES - 1); - if (CheckBridge_Stuff(bridge_type, bridge_len)) { - if (CmdSucceeded(DoCommand(tile, tmptile, bridge_type | ((0x80 | ROADTYPES_ROAD) << 8), DC_EXEC | DC_AUTO, CMD_BUILD_BRIDGE))) - _grow_town_result = -1; + do { + byte bridge_type = RandomRange(MAX_BRIDGES - 1); + /* Can we actually build the bridge? */ + if (CmdSucceeded(DoCommand(tile, tmptile, bridge_type | ((0x80 | ROADTYPES_ROAD) << 8), DC_AUTO, CMD_BUILD_BRIDGE))) { + DoCommand(tile, tmptile, bridge_type | ((0x80 | ROADTYPES_ROAD) << 8), DC_EXEC | DC_AUTO, CMD_BUILD_BRIDGE); + _grow_town_result = -1; - /* obviously, if building any bridge would fail, there is no need to try other bridge-types */ - return; - } - } while (--j != 0); - } + /* obviously, if building any bridge would fail, there is no need to try other bridge-types */ + return; + } + } while (--j != 0); } /** Returns "growth" if a house was built, or no if the build failed. -- cgit v1.2.3-70-g09d2