diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm
index 38150b5a8d..20148aab7b 100644
--- a/code/game/objects/items/weapons/implants/implant.dm
+++ b/code/game/objects/items/weapons/implants/implant.dm
@@ -157,14 +157,20 @@ Implant Specifics:
"}
activate()
if (malfunction == MALFUNCTION_PERMANENT)
return
+
+ var/need_gib = null
if(istype(imp_in, /mob/))
var/mob/T = imp_in
message_admins("Explosive implant triggered in [T] ([T.key]). (JMP) ")
log_game("Explosive implant triggered in [T] ([T.key]).")
+ need_gib = 1
- T.gib()
explosion(get_turf(imp_in), 1, 3, 4, 6, 3)
+
+ if(need_gib)
+ imp_in.gib()
+
var/turf/t = get_turf(imp_in)
if(t)