From aea8e7291e77859cbf5cdb04aa795a510c599504 Mon Sep 17 00:00:00 2001 From: rubidium Date: Sat, 14 Mar 2009 15:34:30 +0000 Subject: (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. --- src/rail_cmd.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp index ae7178c18..ddeda2818 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -319,15 +319,14 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u 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; -- cgit v1.2.3-54-g00ecf