From 0f966a316a508a8a066eb5512da7dc6eab75b2f3 Mon Sep 17 00:00:00 2001 From: peter1138 Date: Wed, 23 Jan 2008 08:47:49 +0000 Subject: [PATCH] (svn r11956) -Fix [FS#1675]: Disallow building locks and docks on rapids. --- src/station_cmd.cpp | 3 +++ src/water_cmd.cpp | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 316403043a..8b30d98ded 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -1954,6 +1954,9 @@ CommandCost CmdBuildDock(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) default: return_cmd_error(STR_304B_SITE_UNSUITABLE); } + /* Docks cannot be placed on rapids */ + if (IsRiverTile(tile)) return_cmd_error(STR_304B_SITE_UNSUITABLE); + if (!(flags & DC_NO_TOWN_RATING) && !CheckIfAuthorityAllows(tile)) return CMD_ERROR; if (MayHaveBridgeAbove(tile) && IsBridgeAbove(tile)) return_cmd_error(STR_5007_MUST_DEMOLISH_BRIDGE_FIRST); diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp index 681ccb3313..abb68dce99 100644 --- a/src/water_cmd.cpp +++ b/src/water_cmd.cpp @@ -285,6 +285,10 @@ CommandCost CmdBuildLock(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) case SLOPE_NE: dir = DIAGDIR_NE; break; default: return_cmd_error(STR_1000_LAND_SLOPED_IN_WRONG_DIRECTION); } + + /* Disallow building of locks on river rapids */ + if (IsRiverTile(tile)) return_cmd_error(STR_0239_SITE_UNSUITABLE); + return DoBuildShiplift(tile, dir, flags); }