aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2024-08-06 12:08:41 +0200
committerOvahlord <dreadkiller@gmx.de>2024-08-06 12:08:41 +0200
commitfb0c4f640f810be51d11796ebe09e9d166f65847 (patch)
tree3a20cb3ac15d9c0d0ff8389a05a4f7a96831b53c /src
parent577f6d151650a329232a37f6bd3229fc1707f861 (diff)
Core/Units: fixed a logic mistake in crit supression mechanic that was falsely increasing the crit chance when attacking lower level targets
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 2ef96e3b406..bc7333a02ce 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -7125,7 +7125,8 @@ float Unit::SpellCritChanceTaken(Unit const* caster, Spell* spell, AuraEffect co
if (GetTypeId() == TYPEID_UNIT)
{
int32 const levelDiff = static_cast<int32>(GetLevelForTarget(caster)) - caster->GetLevel();
- crit_chance -= levelDiff * 1.0f;
+ if (levelDiff > 0)
+ crit_chance -= levelDiff * 1.0f;
}
}
break;