diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm
index 823e2978952..ac1ea2f9714 100644
--- a/code/modules/mob/living/carbon/human/human_defense.dm
+++ b/code/modules/mob/living/carbon/human/human_defense.dm
@@ -497,11 +497,15 @@ emp_act
return FALSE //item force is zero
var/armor = run_armor_check(affecting, MELEE, "Your armour has protected your [hit_area].", "Your armour has softened hit to your [hit_area].", armour_penetration_flat = I.armour_penetration_flat, armour_penetration_percentage = I.armour_penetration_percentage)
- var/weapon_sharp = is_sharp(I)
- if(weapon_sharp && prob(getarmor(user.zone_selected, MELEE)))
- weapon_sharp = 0
if(armor == INFINITY)
- return 0
+ return FALSE
+
+ var/weapon_sharp = I.sharp
+ // do not roll for random blunt if the target mob is dead for the ease of decaps
+ if(stat != DEAD)
+ if(weapon_sharp && prob(getarmor(user.zone_selected, MELEE)))
+ weapon_sharp = FALSE
+
var/bonus_damage = 0
if(ishuman(user))
var/mob/living/carbon/human/H = user
@@ -509,11 +513,11 @@ emp_act
apply_damage(I.force + bonus_damage , I.damtype, affecting, armor, sharp = weapon_sharp, used_weapon = I)
- var/bloody = 0
+ var/bloody = FALSE
if(I.damtype == BRUTE && I.force && prob(25 + I.force * 2))
I.add_mob_blood(src) //Make the weapon bloody, not the person.
if(prob(I.force * 2)) //blood spatter!
- bloody = 1
+ bloody = TRUE
var/turf/location = loc
if(issimulatedturf(location))
add_splatter_floor(location, emittor_intertia = inertia_next_move > world.time ? last_movement_dir : null)