changeset 15464:e526f1e34127 draft

(svn r20113) -Add [FS#3895]: Show an specific error message when trying to remove nonexistant roads (Krille).
author terkhen <terkhen@openttd.org>
date Sat, 10 Jul 2010 20:12:32 +0000
parents 579d5d422892
children 8c1ec9acb54c
files src/lang/english.txt src/road_cmd.cpp
diffstat 2 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/lang/english.txt
+++ b/src/lang/english.txt
@@ -3559,6 +3559,8 @@
 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...
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -180,7 +180,7 @@
 {
 	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 @@
 
 			/* 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;