mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-02-24 09:39:51 +00:00
Update weapon state when we cancel attack animation (bug #5124)
This commit is contained in:
parent
e03e4495e6
commit
07cf93f4db
@ -121,6 +121,7 @@
|
|||||||
Bug #5105: NPCs start combat with werewolves from any distance
|
Bug #5105: NPCs start combat with werewolves from any distance
|
||||||
Bug #5110: ModRegion with a redundant numerical argument breaks script execution
|
Bug #5110: ModRegion with a redundant numerical argument breaks script execution
|
||||||
Bug #5123: Script won't run on respawn
|
Bug #5123: Script won't run on respawn
|
||||||
|
Bug #5124: Arrow remains attached to actor if pulling animation was cancelled
|
||||||
Feature #1774: Handle AvoidNode
|
Feature #1774: Handle AvoidNode
|
||||||
Feature #2229: Improve pathfinding AI
|
Feature #2229: Improve pathfinding AI
|
||||||
Feature #3025: Analogue gamepad movement controls
|
Feature #3025: Analogue gamepad movement controls
|
||||||
|
@ -315,6 +315,8 @@ void CharacterController::refreshHitRecoilAnims(CharacterState& idle)
|
|||||||
{
|
{
|
||||||
mAnimation->disable(mCurrentWeapon);
|
mAnimation->disable(mCurrentWeapon);
|
||||||
mUpperBodyState = UpperCharState_WeapEquiped;
|
mUpperBodyState = UpperCharState_WeapEquiped;
|
||||||
|
if (mWeaponType > WeapType_HandToHand && mWeaponType < WeapType_Spell)
|
||||||
|
mAnimation->showWeapons(true);
|
||||||
}
|
}
|
||||||
else if (mUpperBodyState > UpperCharState_Nothing && mUpperBodyState < UpperCharState_WeapEquiped)
|
else if (mUpperBodyState > UpperCharState_Nothing && mUpperBodyState < UpperCharState_WeapEquiped)
|
||||||
{
|
{
|
||||||
@ -1321,6 +1323,7 @@ bool CharacterController::updateWeaponState(CharacterState& idle)
|
|||||||
mUpperBodyState = UpperCharState_WeapEquiped;
|
mUpperBodyState = UpperCharState_WeapEquiped;
|
||||||
mAttackingOrSpell = false;
|
mAttackingOrSpell = false;
|
||||||
mAnimation->disable(mCurrentWeapon);
|
mAnimation->disable(mCurrentWeapon);
|
||||||
|
mAnimation->showWeapons(true);
|
||||||
if (mPtr == getPlayer())
|
if (mPtr == getPlayer())
|
||||||
MWBase::Environment::get().getWorld()->getPlayer().setAttackingOrSpell(false);
|
MWBase::Environment::get().getWorld()->getPlayer().setAttackingOrSpell(false);
|
||||||
}
|
}
|
||||||
@ -1726,7 +1729,11 @@ bool CharacterController::updateWeaponState(CharacterState& idle)
|
|||||||
else if (isKnockedDown())
|
else if (isKnockedDown())
|
||||||
{
|
{
|
||||||
if (mUpperBodyState > UpperCharState_WeapEquiped)
|
if (mUpperBodyState > UpperCharState_WeapEquiped)
|
||||||
|
{
|
||||||
mUpperBodyState = UpperCharState_WeapEquiped;
|
mUpperBodyState = UpperCharState_WeapEquiped;
|
||||||
|
if (mWeaponType > WeapType_HandToHand && mWeaponType < WeapType_Spell)
|
||||||
|
mAnimation->showWeapons(true);
|
||||||
|
}
|
||||||
mAnimation->disable(mCurrentWeapon);
|
mAnimation->disable(mCurrentWeapon);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user