summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorterkhen <terkhen@openttd.org>2010-07-10 20:12:32 +0000
committerterkhen <terkhen@openttd.org>2010-07-10 20:12:32 +0000
commit40e58f78ba2b03e6de6f0d8781d47c1cd3acb6d4 (patch)
tree76602323eb345b0e113e6d0877a6dd45a2f82d8d
parent5eb5ddbf313408dd553d80caae44bb0abfe09eaf (diff)
downloadopenttd-40e58f78ba2b03e6de6f0d8781d47c1cd3acb6d4.tar.xz
(svn r20113) -Add [FS#3895]: Show an specific error message when trying to remove nonexistant roads (Krille).
-rw-r--r--src/lang/english.txt2
-rw-r--r--src/road_cmd.cpp4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/lang/english.txt b/src/lang/english.txt
index ea84f1dfd..6f3dd8bf8 100644
--- a/src/lang/english.txt
+++ b/src/lang/english.txt
@@ -3559,6 +3559,8 @@ STR_ERROR_CAN_T_BUILD_ROAD_HERE :{WHITE}Can't bu
STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Can't build tramway here...
STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}Can't remove road from here...
STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Can't remove tramway from here...
+STR_ERROR_THERE_IS_NO_ROAD :{WHITE}...there is no road
+STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}...there is no tramway
# Waterway construction errors
STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}Can't build canals here...
diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp
index dfe66a7ab..08536d710 100644
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -180,7 +180,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
{
RoadTypes rts = GetRoadTypes(tile);
/* The tile doesn't have the given road type */
- if (!HasBit(rts, rt)) return CMD_ERROR;
+ if (!HasBit(rts, rt)) return_cmd_error(rt == ROADTYPE_TRAM ? STR_ERROR_THERE_IS_NO_TRAMWAY : STR_ERROR_THERE_IS_NO_ROAD);
switch (GetTileType(tile)) {
case MP_ROAD: {
@@ -271,7 +271,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec
/* limit the bits to delete to the existing bits. */
pieces &= present;
- if (pieces == ROAD_NONE) return CMD_ERROR;
+ if (pieces == ROAD_NONE) return_cmd_error(rt == ROADTYPE_TRAM ? STR_ERROR_THERE_IS_NO_TRAMWAY : STR_ERROR_THERE_IS_NO_ROAD);
/* Now set present what it will be after the remove */
present ^= pieces;