From 5e99545b9c5fd111218c60af6271e0f5e75df1fb Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Wed, 3 Apr 2024 21:11:49 +0300 Subject: [PATCH 1/2] Don't discard stagger/KO animation movement --- apps/openmw/mwmechanics/character.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/openmw/mwmechanics/character.cpp b/apps/openmw/mwmechanics/character.cpp index c847bae033..f7c381d33e 100644 --- a/apps/openmw/mwmechanics/character.cpp +++ b/apps/openmw/mwmechanics/character.cpp @@ -2698,6 +2698,9 @@ namespace MWMechanics bool CharacterController::isMovementAnimationControlled() const { + if (mHitState != CharState_None) + return true; + if (Settings::game().mPlayerMovementIgnoresAnimation && mPtr == getPlayer()) return false; From dfdd7aa684a02594f2013ad9460e1c0f8fc9b2d1 Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Wed, 3 Apr 2024 21:16:47 +0300 Subject: [PATCH 2/2] Always queue movement even when there's none --- apps/openmw/mwmechanics/character.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/apps/openmw/mwmechanics/character.cpp b/apps/openmw/mwmechanics/character.cpp index f7c381d33e..646cee8a23 100644 --- a/apps/openmw/mwmechanics/character.cpp +++ b/apps/openmw/mwmechanics/character.cpp @@ -2479,9 +2479,7 @@ namespace MWMechanics movement.x() *= scale; movement.y() *= scale; - // Update movement - if (movement != osg::Vec3f()) - world->queueMovement(mPtr, movement); + world->queueMovement(mPtr, movement); } mSkipAnim = false;