(svn r8448) -Codechange/Fix (r2993): Also update the helicopter's rotor when loading the game. This can solve crashes when a game is loaded with missing GRF's

This commit is contained in:
Darkvater 2007-01-28 21:53:13 +00:00
parent 00782c089d
commit 39a50e3723
2 changed files with 11 additions and 1 deletions

View File

@ -234,7 +234,16 @@ void AfterLoadVehicles(void)
case VEH_Aircraft:
if (IsNormalAircraft(v)) {
v->cur_image = GetAircraftImage(v, v->direction);
if (v->next != NULL) v->next->cur_image = v->cur_image;
/* The plane's shadow will have the same image as the plane */
Vehicle *shadow = v->next;
shadow->cur_image = v->cur_image;
/* In the case of a helicopter we will update the rotor sprites */
if (v->subtype == AIR_HELICOPTER) {
Vehicle *rotor = shadow->next;
rotor->cur_image = GetRotorImage(v);
}
}
break;
default: break;

View File

@ -296,6 +296,7 @@ int GetTrainImage(const Vehicle* v, Direction direction);
int GetAircraftImage(const Vehicle* v, Direction direction);
int GetRoadVehImage(const Vehicle* v, Direction direction);
int GetShipImage(const Vehicle* v, Direction direction);
SpriteID GetRotorImage(const Vehicle *v);
Vehicle *CreateEffectVehicle(int x, int y, int z, EffectVehicle type);
Vehicle *CreateEffectVehicleAbove(int x, int y, int z, EffectVehicle type);