diff options
author | peter1138 <peter1138@openttd.org> | 2006-02-07 18:57:16 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2006-02-07 18:57:16 +0000 |
commit | 66fcdc5e6d014e57dadf2f420e91d2fc4643131f (patch) | |
tree | 298afe9585d01cd4b86ea70cd5ada7ff80bb0777 | |
parent | fbd78c818510a9b0da1e88de34cbcc3f5ac23866 (diff) | |
download | openttd-66fcdc5e6d014e57dadf2f420e91d2fc4643131f.tar.xz |
(svn r3571) - When loading a game, call TrainConsistChanged() for each train head separately before updating images, as v->first is used extensively in GetTrainImage() for custom graphics. This gives a significant speed improvement on loading a game.
-rw-r--r-- | vehicle.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -218,6 +218,11 @@ void AfterLoadVehicles(void) FOR_ALL_VEHICLES(v) { v->first = NULL; + if (v->type == VEH_Train && (IsFrontEngine(v) || IsFreeWagon(v))) + TrainConsistChanged(v); + } + + FOR_ALL_VEHICLES(v) { if (v->type != 0) { switch (v->type) { case VEH_Train: v->cur_image = GetTrainImage(v, v->direction); break; @@ -234,9 +239,6 @@ void AfterLoadVehicles(void) v->left_coord = INVALID_COORD; VehiclePositionChanged(v); - - if (v->type == VEH_Train && (IsFrontEngine(v) || IsFreeWagon(v))) - TrainConsistChanged(v); } } } |