diff options
-rw-r--r-- | aircraft_cmd.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/aircraft_cmd.c b/aircraft_cmd.c index 8f834ea38..5da4b6929 100644 --- a/aircraft_cmd.c +++ b/aircraft_cmd.c @@ -946,11 +946,13 @@ static void HandleCrashedAircraft(Vehicle *v) st = GetStation(v->u.air.targetairport); // make aircraft crash down to the ground - if ( st->airport_tile==0 && ((v->u.air.crashed_counter % 3) == 0) ) { - z = GetSlopeZ(v->x_pos, v->y_pos) + 1; + if (v->u.air.crashed_counter < 500 && st->airport_tile==0 && ((v->u.air.crashed_counter % 3) == 0) ) { + z = GetSlopeZ(v->x_pos, v->y_pos); v->z_pos -= 1; - if (v->z_pos < z) - DoDeleteAircraft(v); + if (v->z_pos == z) { + v->u.air.crashed_counter = 500; + v->z_pos++; + } } if (v->u.air.crashed_counter < 650) { |