diff --git a/newgrf.c b/newgrf.c index db99677feb..5f879063f8 100644 --- a/newgrf.c +++ b/newgrf.c @@ -2476,6 +2476,7 @@ static void InitializeGRFSpecial(void) | (1 << 0x1C); /* electrifiedrailway */ _ttdpatch_flags[2] = (_patches.build_on_slopes ? (1 << 0x0D) : 0) /* buildonslopes */ + | (1 << 0x12) /* newstations */ | (_patches.build_on_slopes ? (1 << 0x15) : 0) /* buildoncoasts */ | (1 << 0x16) /* canals */ | (1 << 0x17) /* newstartyear */ diff --git a/rail_cmd.c b/rail_cmd.c index c85019ff62..b4ed546e65 100644 --- a/rail_cmd.c +++ b/rail_cmd.c @@ -852,7 +852,7 @@ static int32 DoConvertRail(TileIndex tile, RailType totype, bool exec) { if (!CheckTileOwnership(tile)) return CMD_ERROR; - if (!EnsureNoVehicle(tile) && (!IsCompatibleRail(GetRailType(tile), totype) || IsPlainRailTile(tile))) return CMD_ERROR; + if (!(EnsureNoVehicle(tile) || (GetRailType(tile) == RAILTYPE_RAIL && totype == RAILTYPE_ELECTRIC)) && (!IsCompatibleRail(GetRailType(tile), totype) || IsPlainRailTile(tile))) return CMD_ERROR; // tile is already of requested type? if (GetRailType(tile) == totype) return CMD_ERROR;