diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index a3c9babd97..7659dc8d57 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -423,23 +423,17 @@
var/mob/living/simple_animal/borer/B = has_brain_worms()
- if(!B)
- return
-
- if(B.controlling)
+ if(B && B.host_brain)
src << "\red You withdraw your probosci, releasing control of [B.host_brain]"
- B.host_brain << "\red Your vision swims as the alien parasite releases control of your body."
- B.ckey = ckey
- B.controlling = 0
- if(B.host_brain.ckey)
- ckey = B.host_brain.ckey
- B.host_brain.ckey = null
- B.host_brain.name = "host brain"
- B.host_brain.real_name = "host brain"
- verbs -= /mob/living/carbon/proc/release_control
- verbs -= /mob/living/carbon/proc/punish_host
- verbs -= /mob/living/carbon/proc/spawn_larvae
+ B.detatch()
+
+ verbs -= /mob/living/carbon/proc/release_control
+ verbs -= /mob/living/carbon/proc/punish_host
+ verbs -= /mob/living/carbon/proc/spawn_larvae
+
+ else
+ src << "\red ERROR NO BORER OR BRAINMOB DETECTED IN THIS MOB, THIS IS A BUG !"
//Brain slug proc for tormenting the host.
/mob/living/carbon/proc/punish_host()
@@ -486,4 +480,4 @@
else
src << "You do not have enough chemicals stored to reproduce."
- return
\ No newline at end of file
+ return