mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-10 08:00:05 +00:00
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.
This commit is contained in:
parent
e8c78df39e
commit
83da886093
@ -1182,9 +1182,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, Map::MaxX() * TILE_SIZE), Clamp(v->y_pos, 0, Map::MaxY() * 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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user