diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm
index c123ebde2bb..5f38e4439ea 100644
--- a/code/game/objects/items/weapons/implants/implant.dm
+++ b/code/game/objects/items/weapons/implants/implant.dm
@@ -180,22 +180,7 @@ Implant Specifics:
"}
switch (severity)
if (2.0) //Weak EMP will make implant tear limbs off.
if (prob(50))
- if (ishuman(imp_in) && part)
- imp_in.visible_message("\red Something beeps inside [imp_in][part ? "'s [part.display_name]" : ""]!")
- playsound(loc, 'sound/items/countdown.ogg', 75, 1, -3)
- spawn(25)
- if (ishuman(imp_in) && part)
- //No tearing off these parts since it's pretty much killing
- //and you can't replace groins
- if (istype(part,/datum/organ/external/chest) || \
- istype(part,/datum/organ/external/groin) || \
- istype(part,/datum/organ/external/head))
- part.createwound(BRUISE, 60) //mangle them instead
- else
- part.droplimb(1)
- explosion(get_turf(imp_in), -1, -1, 2, 3, 3)
- del(src)
-
+ small_boom()
if (1.0) //strong EMP will melt implant either making it go off, or disarming it
if (prob(50))
activate() //50% chance of bye bye
@@ -207,6 +192,23 @@ Implant Specifics:
"}
islegal()
return 0
+ proc/small_boom()
+ if (ishuman(imp_in) && part)
+ imp_in.visible_message("\red Something beeps inside [imp_in][part ? "'s [part.display_name]" : ""]!")
+ playsound(loc, 'sound/items/countdown.ogg', 75, 1, -3)
+ spawn(25)
+ if (ishuman(imp_in) && part)
+ //No tearing off these parts since it's pretty much killing
+ //and you can't replace groins
+ if (istype(part,/datum/organ/external/chest) || \
+ istype(part,/datum/organ/external/groin) || \
+ istype(part,/datum/organ/external/head))
+ part.createwound(BRUISE, 60) //mangle them instead
+ else
+ part.droplimb(1)
+ explosion(get_turf(imp_in), -1, -1, 2, 3, 3)
+ del(src)
+
/obj/item/weapon/implant/chem
name = "chem"
desc = "Injects things."