diff options
author | bjarni <bjarni@openttd.org> | 2006-01-29 23:04:51 +0000 |
---|---|---|
committer | bjarni <bjarni@openttd.org> | 2006-01-29 23:04:51 +0000 |
commit | 8c7e594b08cfaabf1f4d273bfc939d73726fd4e1 (patch) | |
tree | caede39d14b8200f70f0ecfa943c2a9e301e7885 | |
parent | b7beb3d87d68e6a6846a1c88d704763f824125a6 (diff) | |
download | openttd-8c7e594b08cfaabf1f4d273bfc939d73726fd4e1.tar.xz |
(svn r3484) -fix: fixed issue in last commit where loading savegame versions 18 and 19 didn't init the multiheaded engine pointers
-rw-r--r-- | openttd.c | 5 | ||||
-rw-r--r-- | train_cmd.c | 35 |
2 files changed, 2 insertions, 38 deletions
@@ -1150,9 +1150,8 @@ bool AfterLoadGame(void) * subtype to the new format */ if (CheckSavegameVersionOldStyle(17, 1)) ConvertOldMultiheadToNew(); - /* Connect front and rear engines of multiheaded trains - since this info were no longer saved in savegame version 20 */ - if (!CheckSavegameVersion(20)) ConnectMultiheadedTrains(); + /* Connect front and rear engines of multiheaded trains */ + ConnectMultiheadedTrains(); // Update current year SetDate(_date); diff --git a/train_cmd.c b/train_cmd.c index 131e21cd2..ba350753d 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -3618,41 +3618,6 @@ void ConvertOldMultiheadToNew(void) default: NOT_REACHED(); break; } END_ENUM_WAGONS(u) - u = v; - BEGIN_ENUM_WAGONS(u) - const RailVehicleInfo *rvi = RailVehInfo(u->engine_type); - - if (u->u.rail.other_multiheaded_part != NULL) continue; - - if (rvi->flags & RVI_MULTIHEAD) { - if (!IsTrainEngine(u)) { - /* we got a rear car without a front car. We will convert it to a front one */ - SetTrainEngine(u); - u->spritenum--; - } - - { - Vehicle *w; - - for(w = u->next; w != NULL && (w->engine_type != u->engine_type || w->u.rail.other_multiheaded_part != NULL); w = GetNextVehicle(w)); - if (w != NULL) { - /* we found a car to partner with this engine. Now we will make sure it face the right way */ - if (IsTrainEngine(w)) { - ClearTrainEngine(w); - w->spritenum++; - } - } - - if (w != NULL) { - w->u.rail.other_multiheaded_part = u; - u->u.rail.other_multiheaded_part = w; - } else { - /* we got a front car and no rear cars. We will fake this one for forget that it should have been multiheaded */ - ClearMultiheaded(u); - } - } - } - END_ENUM_WAGONS(u) } } } |