diff --git a/rail_cmd.c b/rail_cmd.c --- a/rail_cmd.c +++ b/rail_cmd.c @@ -883,6 +883,9 @@ static int32 DoConvertRail(TileIndex til // tile is already of requested type? if (GetRailType(tile) == totype) return CMD_ERROR; + // 'hidden' elrails can't be downgraded to normal rail when elrails are disabled + if (_patches.disable_elrails && totype == RAILTYPE_RAIL && GetRailType(tile) == RAILTYPE_ELECTRIC) return CMD_ERROR; + // change type. if (exec) { TrackBits tracks;