# HG changeset patch # User tron # Date 1170279489 0 # Node ID 28dcf755e961aa4405910dd1afef49975089d1ef # Parent e0a6ce7c45b813cee640d9b821fc9d473d7c7edf (svn r8498) -Fix -Codechange: Move the update of the oil rig airport type to the recently (r8485) added loop diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp --- a/src/aircraft_cmd.cpp +++ b/src/aircraft_cmd.cpp @@ -2041,14 +2041,6 @@ } } -void UpdateOilRig(void) -{ - Station* st; - - FOR_ALL_STATIONS(st) { - if (st->airport_type == 5) st->airport_type = AT_OILRIG; - } -} // need to be called to load aircraft from old version void UpdateOldAircraft(void) @@ -2060,8 +2052,6 @@ // set airport_flags to 0 for all airports just to be sure FOR_ALL_STATIONS(st) { st->airport_flags = 0; // reset airport - // type of oilrig has been moved, update it (3-5) - if (st->airport_type == 3) st->airport_type = AT_OILRIG; } FOR_ALL_VEHICLES(v_oldstyle) { diff --git a/src/openttd.cpp b/src/openttd.cpp --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -1154,7 +1154,6 @@ } extern void UpdateOldAircraft( void ); -extern void UpdateOilRig( void ); static inline RailType UpdateRailType(RailType rt, RailType min) @@ -1278,9 +1277,6 @@ DoZoomInOutWindow(ZOOM_NONE, w); // update button status MarkWholeScreenDirty(); - // In 5.1, Oilrigs have been moved (again) - if (CheckSavegameVersionOldStyle(5, 1)) UpdateOilRig(); - /* From this version on there can be multiple road stops of the same type per * station. Convert the existing stops to the new internal data structure. */ @@ -1307,8 +1303,14 @@ * the map */ TileIndex t1 = TILE_ADDXY(t, 1, 0); - if (!IsTileType(t1, MP_INDUSTRY) || - GetIndustryGfx(t1) != GFX_OILRIG_3) { + if (IsTileType(t1, MP_INDUSTRY) && + GetIndustryGfx(t1) == GFX_OILRIG_3) { + /* The internal encoding of oil rigs was changed twice. + * It was 3 (till 2.2) and later 5 (till 5.1). + * Setting it unconditionally does not hurt. + */ + GetStationByTile(t)->airport_type = AT_OILRIG; + } else { DeleteOilRig(t); } break;