summaryrefslogtreecommitdiff
path: root/apps/openmw/mwmechanics/weaponpriority.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'apps/openmw/mwmechanics/weaponpriority.cpp')
-rw-r--r--apps/openmw/mwmechanics/weaponpriority.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/openmw/mwmechanics/weaponpriority.cpp b/apps/openmw/mwmechanics/weaponpriority.cpp
index 55fb2eaf09..2e56dc45e9 100644
--- a/apps/openmw/mwmechanics/weaponpriority.cpp
+++ b/apps/openmw/mwmechanics/weaponpriority.cpp
@@ -125,7 +125,9 @@ namespace MWMechanics
value = ref->mBase->mData.mCombat;
}
- rating *= getHitChance(actor, enemy, value) / 100.f;
+ // Take hit chance in account, but do not allow rating become negative.
+ float chance = getHitChance(actor, enemy, value) / 100.f;
+ rating *= std::min(1.f, std::max(0.01f, chance));
if (weapon->mData.mType < ESM::Weapon::Arrow)
rating *= weapon->mData.mSpeed;