diff --git a/src/game/game.cpp b/src/game/game.cpp index e3414f74725..8b19f8bb94f 100644 --- a/src/game/game.cpp +++ b/src/game/game.cpp @@ -7418,7 +7418,7 @@ bool Game::combatChangeHealth(const std::shared_ptr &attacker, const s } auto targetHealth = target->getHealth(); - realDamage = damage.primary.value + damage.secondary.value; + realDamage = std::min(targetHealth, damage.primary.value + damage.secondary.value); if (realDamage == 0) { return true; } else if (realDamage >= targetHealth) {