# HG changeset patch # User rubidium # Date 1180426777 0 # Node ID 522ddf421dae583ff8339991c62c1c108f454a27 # Parent c14c1d29a642fd6be639637cb26977f180c3a78a (svn r9971) -Fix (r9892, r9958): loading of post-'bridges over "everything"' messed with the railtype of bridges. diff -r c14c1d29a642 -r 522ddf421dae src/openttd.cpp --- a/src/openttd.cpp Tue May 29 07:12:49 2007 +0000 +++ b/src/openttd.cpp Tue May 29 08:19:37 2007 +0000 @@ -1446,6 +1446,7 @@ if (CheckSavegameVersion(61)) { /* Added the RoadType */ + bool old_bridge = CheckSavegameVersion(42); for (TileIndex t = 0; t < map_size; t++) { switch(GetTileType(t)) { case MP_STREET: @@ -1470,7 +1471,9 @@ break; case MP_TUNNELBRIDGE: - if ((IsTunnel(t) ? GetTunnelTransportType(t) : (TransportType)GB(_m[t].m5, 1, 2)) == TRANSPORT_ROAD) { + /* Middle part of "old" bridges */ + if (old_bridge && IsBridgeTile(t) && HASBIT(_m[t].m5, 6)) break; + if ((IsTunnel(t) ? GetTunnelTransportType(t) : (old_bridge ? (TransportType)GB(_m[t].m5, 1, 2) : GetBridgeTransportType(t))) == TRANSPORT_ROAD) { SetRoadTypes(t, ROADTYPES_ROAD); } break;