Fix: Aircraft crash counter was too low to reach ground. (#12425)
Aircraft can float above the ground when crashed as the counter limit to reach the ground is too low.
Instead reset the counter until the aircraft reaches the ground, then continue the timer.
(cherry picked from commit 83da886093
)
This commit is contained in:

committed by
Jonathan G Rennison

parent
cc6322e0a3
commit
9b830e9eb2
@@ -1269,9 +1269,11 @@ static bool HandleCrashedAircraft(Aircraft *v)
|
||||
if (v->crashed_counter < 500 && st == nullptr && ((v->crashed_counter % 3) == 0) ) {
|
||||
int z = GetSlopePixelZ(Clamp(v->x_pos, 0, MapMaxX() * TILE_SIZE), Clamp(v->y_pos, 0, MapMaxY() * TILE_SIZE));
|
||||
v->z_pos -= 1;
|
||||
if (v->z_pos == z) {
|
||||
if (v->z_pos <= z) {
|
||||
v->crashed_counter = 500;
|
||||
v->z_pos++;
|
||||
v->z_pos = z + 1;
|
||||
} else {
|
||||
v->crashed_counter = 0;
|
||||
}
|
||||
SetAircraftPosition(v, v->x_pos, v->y_pos, v->z_pos);
|
||||
}
|
||||
|
Reference in New Issue
Block a user