summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/road_cmd.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp
index d0104cb99..79048b9b5 100644
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -2388,6 +2388,17 @@ CommandCost CmdConvertRoad(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3
}
}
+ /* Base the ability to replace town roads and bridges on the town's
+ * acceptance of destructive actions. */
+ if (owner == OWNER_TOWN) {
+ Town *t = ClosestTownFromTile(tile, _settings_game.economy.dist_local_authority);
+ CommandCost ret = CheckforTownRating(DC_NONE, t, tt == MP_TUNNELBRIDGE ? TUNNELBRIDGE_REMOVE : ROAD_REMOVE);
+ if (ret.Failed()) {
+ error = ret;
+ continue;
+ }
+ }
+
/* Vehicle on the tile when not converting normal <-> powered
* Tunnels and bridges have special check later */
if (tt != MP_TUNNELBRIDGE) {