summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2007-11-12 19:21:33 +0000
committerrubidium <rubidium@openttd.org>2007-11-12 19:21:33 +0000
commit8752519896f4cf0a164fcc4ec590f4090311f611 (patch)
tree63ab6ebae928d557e91f34a73091811969d84f67 /src
parent9d85d9d41fb5e74fd2a9248b2394a4be3cbd3708 (diff)
downloadopenttd-8752519896f4cf0a164fcc4ec590f4090311f611.tar.xz
(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.
Diffstat (limited to 'src')
-rw-r--r--src/town_cmd.cpp4
1 files changed, 3 insertions, 1 deletions
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? */