(svn r24356) -Change: Allow building/modifying/removing signals even if a train is on the belonging track.
This commit is contained in:
@@ -986,13 +986,10 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1,
|
|||||||
!HasTrack(tile, track)) {
|
!HasTrack(tile, track)) {
|
||||||
return_cmd_error(STR_ERROR_THERE_IS_NO_RAILROAD_TRACK);
|
return_cmd_error(STR_ERROR_THERE_IS_NO_RAILROAD_TRACK);
|
||||||
}
|
}
|
||||||
CommandCost ret = EnsureNoTrainOnTrack(tile, track);
|
|
||||||
if (ret.Failed()) return ret;
|
|
||||||
|
|
||||||
/* Protect against invalid signal copying */
|
/* Protect against invalid signal copying */
|
||||||
if (p2 != 0 && (p2 & SignalOnTrack(track)) == 0) return CMD_ERROR;
|
if (p2 != 0 && (p2 & SignalOnTrack(track)) == 0) return CMD_ERROR;
|
||||||
|
|
||||||
ret = CheckTileOwnership(tile);
|
CommandCost ret = CheckTileOwnership(tile);
|
||||||
if (ret.Failed()) return ret;
|
if (ret.Failed()) return ret;
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -1400,8 +1397,6 @@ CommandCost CmdRemoveSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1
|
|||||||
if (!HasSignalOnTrack(tile, track)) {
|
if (!HasSignalOnTrack(tile, track)) {
|
||||||
return_cmd_error(STR_ERROR_THERE_ARE_NO_SIGNALS);
|
return_cmd_error(STR_ERROR_THERE_ARE_NO_SIGNALS);
|
||||||
}
|
}
|
||||||
CommandCost ret = EnsureNoTrainOnTrack(tile, track);
|
|
||||||
if (ret.Failed()) return ret;
|
|
||||||
|
|
||||||
/* Only water can remove signals from anyone */
|
/* Only water can remove signals from anyone */
|
||||||
if (_current_company != OWNER_WATER) {
|
if (_current_company != OWNER_WATER) {
|
||||||
|
Reference in New Issue
Block a user