Avoid falling height reset if onGround state didn't change (bug #4411)

pull/541/head
Capostrophic 6 years ago
parent 8e113a32b2
commit 0bbcc0e787

@ -3,6 +3,7 @@
Bug #2987: Editor: some chance and AI data fields can overflow
Bug #3623: Fix HiDPI on Windows
Bug #4411: Reloading a saved game while falling prevents damage in some cases
Bug #4540: Rain delay when exiting water
Bug #4701: PrisonMarker record is not hardcoded like other markers
Bug #4714: Crash upon game load in the repair menu while the "Your repair failed!" message is active

@ -1339,7 +1339,7 @@ namespace MWPhysics
float heightDiff = position.z() - oldHeight;
MWMechanics::CreatureStats& stats = iter->first.getClass().getCreatureStats(iter->first);
if ((wasOnGround && physicActor->getOnGround()) || flying || world->isSwimming(iter->first) || slowFall < 1)
if ((numSteps > 0 && wasOnGround && physicActor->getOnGround()) || flying || world->isSwimming(iter->first) || slowFall < 1)
stats.land(iter->first == player);
else if (heightDiff < 0)
stats.addToFallHeight(-heightDiff);

Loading…
Cancel
Save