From 0f17d2537725aa5d15afa5a4a878cea9df7e5f39 Mon Sep 17 00:00:00 2001 From: tron Date: Wed, 31 Jan 2007 09:49:02 +0000 Subject: (svn r8478) -Fix Change the structure of the the loop in r8477 to prepare for further changes --- src/openttd.cpp | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) (limited to 'src/openttd.cpp') diff --git a/src/openttd.cpp b/src/openttd.cpp index cba18f730..a8fea2804 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -1285,16 +1285,28 @@ bool AfterLoadGame(void) /* 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. */ - if (CheckSavegameVersion(6)) { - for (TileIndex t = 0; t < map_size; t++) { - if (IsRoadStopTile(t)) { - RoadStop *rs = new RoadStop(t); - if (rs == NULL) error("Too many road stops in savegame"); + for (TileIndex t = 0; t < map_size; t++) { + switch (GetTileType(t)) { + case MP_STATION: + switch (GetStationType(t)) { + case STATION_TRUCK: + case STATION_BUS: + if (CheckSavegameVersion(6)) { + RoadStop *rs = new RoadStop(t); + if (rs == NULL) error("Too many road stops in savegame"); + + Station *st = GetStationByTile(t); + RoadStop **head = + IsTruckStop(t) ? &st->truck_stops : &st->bus_stops; + *head = rs; + } + break; - Station *st = GetStationByTile(t); - RoadStop **head = IsTruckStop(t) ? &st->truck_stops : &st->bus_stops; - *head = rs; - } + default: break; + } + break; + + default: break; } } -- cgit v1.2.3-54-g00ecf