From 14c092faadf8e2b37f26fcdc9913650fae0ab184 Mon Sep 17 00:00:00 2001 From: rubidium Date: Mon, 12 Nov 2007 19:21:33 +0000 Subject: (svn r11421) -Fix [FS#1431]: do not use a function that asserts when wrapping around the map's edge when you use the wrapping (and MP_VOID tiles) to determine whether the bridge can be build. --- src/town_cmd.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index e6891accd..a8ce3f112 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -925,12 +925,14 @@ static bool GrowTownWithBridge(const Town *t, TileIndex tile, DiagDirection brid uint8 bridge_length = 0; // This value stores the length of the possible bridge TileIndex bridge_tile = tile; // Used to store the other waterside + int delta = TileOffsByDiagDir(bridge_dir); + do { if (bridge_length++ >= 11) { /* Max 11 tile long bridges */ return false; } - bridge_tile = TileAddByDiagDir(bridge_tile, bridge_dir); + bridge_tile += delta; } while (IsWaterTile(bridge_tile)); /* no water tiles in between? */ -- cgit v1.2.3-70-g09d2