summaryrefslogtreecommitdiff
path: root/src/saveload/afterload.cpp
diff options
context:
space:
mode:
authorglx <glx@openttd.org>2020-05-06 22:44:47 +0200
committerglx22 <glx22@users.noreply.github.com>2020-05-06 23:12:59 +0200
commitbc8333723ccf0ea5e889a6bc412c89ea623138bc (patch)
tree597d64290fa30fba189479332c2d29465f1b274f /src/saveload/afterload.cpp
parent64278fd5983c80757615d67c76922e700246fc1b (diff)
downloadopenttd-bc8333723ccf0ea5e889a6bc412c89ea623138bc.tar.xz
Fix #8021: limit savegame range for docking tiles fixing
Diffstat (limited to 'src/saveload/afterload.cpp')
-rw-r--r--src/saveload/afterload.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp
index 0f1d4c450..b81d446e4 100644
--- a/src/saveload/afterload.cpp
+++ b/src/saveload/afterload.cpp
@@ -3120,6 +3120,14 @@ bool AfterLoadGame()
}
if (IsSavegameVersionUntil(SLV_ENDING_YEAR)) {
+ /* Update station docking tiles. Was only needed for pre-SLV_MULTITLE_DOCKS
+ * savegames, but a bug in docking tiles touched all savegames between
+ * SLV_MULTITILE_DOCKS and SLV_ENDING_YEAR. */
+ for (Station *st : Station::Iterate()) {
+ if (st->ship_station.tile != INVALID_TILE) UpdateStationDockingTiles(st);
+ }
+
+ /* Reset roadtype/streetcartype info for non-road bridges. */
for (TileIndex t = 0; t < map_size; t++) {
if (IsTileType(t, MP_TUNNELBRIDGE) && GetTunnelBridgeTransportType(t) != TRANSPORT_ROAD) {
SetRoadTypes(t, INVALID_ROADTYPE, INVALID_ROADTYPE);
@@ -3127,9 +3135,6 @@ bool AfterLoadGame()
}
}
- /* Update station docking tiles. */
- AfterLoadScanDockingTiles();
-
/* Compute station catchment areas. This is needed here in case UpdateStationAcceptance is called below. */
Station::RecomputeCatchmentForAll();