diff --git a/game/modules/tome/class/interface/ActorLife.lua b/game/modules/tome/class/interface/ActorLife.lua
index fd4fe69c7be718fdf4f90963b75d37c8e24ad39c..74afce32ffb146e1519926f78835612603c52519 100644
--- a/game/modules/tome/class/interface/ActorLife.lua
+++ b/game/modules/tome/class/interface/ActorLife.lua
@@ -38,6 +38,7 @@ end
 -- @return true/false if the actor died and the actual damage done
 function _M:takeHit(value, src, death_note)
 	if self.onTakeHit then value = self:onTakeHit(value, src, death_note) end
+	if value <= 0 then return false, 0 end
 	self.life = self.life - value
 	self.changed = true
 	if self.life <= self.die_at and not self.dead then