mirror of https://github.com/OpenTTD/OpenTTD
(svn r24356) -Change: Allow building/modifying/removing signals even if a train is on the belonging track.
parent
0fd41221c3
commit
d496845820
|
@ -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) {
|
||||||
|
|
Loading…
Reference in New Issue