From b63f53f5bb0ccd5b6a97e5eb1d4f7cf13d2dffab Mon Sep 17 00:00:00 2001 From: Andrei Kortunov Date: Sat, 15 May 2021 11:31:08 +0400 Subject: [PATCH] Disable shield animation when we launch a torch one (bug #6043) --- CHANGELOG.md | 1 + apps/openmw/mwmechanics/character.cpp | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f22c4aa20..271711c767 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -124,6 +124,7 @@ Bug #6007: Crash when ending cutscene is playing Bug #6016: Greeting interrupts Fargoth's sneak-walk Bug #6028: Particle system controller values are incorrectly used + Bug #6043: Actor can have torch missing when torch animation is played Feature #390: 3rd person look "over the shoulder" Feature #832: OpenMW-CS: Handle deleted references Feature #1536: Show more information about level on menu diff --git a/apps/openmw/mwmechanics/character.cpp b/apps/openmw/mwmechanics/character.cpp index 6758df9c4a..cb13305356 100644 --- a/apps/openmw/mwmechanics/character.cpp +++ b/apps/openmw/mwmechanics/character.cpp @@ -1876,8 +1876,10 @@ bool CharacterController::updateWeaponState(CharacterState& idle) MWWorld::ConstContainerStoreIterator torch = inv.getSlot(MWWorld::InventoryStore::Slot_CarriedLeft); if(torch != inv.end() && torch->getTypeName() == typeid(ESM::Light).name() && updateCarriedLeftVisible(mWeaponType)) - { + if (mAnimation->isPlaying("shield")) + mAnimation->disable("shield"); + mAnimation->play("torch", Priority_Torch, MWRender::Animation::BlendMask_LeftArm, false, 1.0f, "start", "stop", 0.0f, (~(size_t)0), true); }