changeset 11359:9d8cfd0f6491 draft

(svn r15709) -Change [FS#2729]: be a tad more specific about the fact that you're building incompatible tracks when building incompatible track types on the same tile.
author rubidium <rubidium@openttd.org>
date Sat, 14 Mar 2009 15:34:30 +0000
parents ff2e7d78d3e4
children 4bf4f1f53b12
files src/rail_cmd.cpp
diffstat 1 files changed, 4 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/rail_cmd.cpp
+++ b/src/rail_cmd.cpp
@@ -319,15 +319,14 @@
 
 	switch (GetTileType(tile)) {
 		case MP_RAILWAY:
+			if (!CheckTileOwnership(tile)) return CMD_ERROR;
+
+			if (!IsCompatibleRail(GetRailType(tile), railtype)) return_cmd_error(STR_1001_IMPOSSIBLE_TRACK_COMBINATION);
+
 			if (!CheckTrackCombination(tile, trackbit, flags) ||
 					!EnsureNoTrainOnTrack(tile, track)) {
 				return CMD_ERROR;
 			}
-			if (!IsTileOwner(tile, _current_company) ||
-					!IsCompatibleRail(GetRailType(tile), railtype)) {
-				/* Get detailed error message */
-				return DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR);
-			}
 
 			ret = CheckRailSlope(tileh, trackbit, GetTrackBits(tile), tile);
 			if (CmdFailed(ret)) return ret;