Be more permissive about vehicles when converting tunnel/bridge railtype
This commit is contained in:
@@ -2612,7 +2612,10 @@ CommandCost CmdConvertRail(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3
|
||||
|
||||
/* When not converting rail <-> el. rail, any vehicle cannot be in tunnel/bridge */
|
||||
if (!IsCompatibleRail(type, totype) || !IsCompatibleRail(secondary_type, totype)) {
|
||||
CommandCost ret = TunnelBridgeIsFree(tile, endtile);
|
||||
CommandCost ret = EnsureNoIncompatibleRailtypeTrainOnTrackBits(tile, TRACK_BIT_MASK | TRACK_BIT_WORMHOLE, totype);
|
||||
if (ret.Succeeded()) {
|
||||
ret = EnsureNoIncompatibleRailtypeTrainOnTrackBits(endtile, TRACK_BIT_MASK | TRACK_BIT_WORMHOLE, totype);
|
||||
}
|
||||
if (ret.Failed()) {
|
||||
error = ret;
|
||||
continue;
|
||||
@@ -2910,7 +2913,10 @@ CommandCost CmdConvertRailTrack(TileIndex tile, DoCommandFlag flags, uint32 p1,
|
||||
if (!IsCompatibleRail(type, totype)) {
|
||||
CommandCost ret;
|
||||
if (across) {
|
||||
ret = TunnelBridgeIsFree(tile, endtile, nullptr, TBIFM_PRIMARY_ONLY);
|
||||
ret = EnsureNoIncompatibleRailtypeTrainOnTrackBits(tile, track_bits | TRACK_BIT_WORMHOLE, totype);
|
||||
if (ret.Succeeded()) {
|
||||
ret = EnsureNoIncompatibleRailtypeTrainOnTrackBits(endtile, GetPrimaryTunnelBridgeTrackBits(endtile) | TRACK_BIT_WORMHOLE, totype);
|
||||
}
|
||||
} else {
|
||||
ret = EnsureNoIncompatibleRailtypeTrainOnTrackBits(tile, track_bits, totype);
|
||||
}
|
||||
|
Reference in New Issue
Block a user