diff --git a/code/modules/mob/living/carbon/human/species_types/arachnid.dm b/code/modules/mob/living/carbon/human/species_types/arachnid.dm
index 68d2cbbff6..a44177ced1 100644
--- a/code/modules/mob/living/carbon/human/species_types/arachnid.dm
+++ b/code/modules/mob/living/carbon/human/species_types/arachnid.dm
@@ -139,12 +139,18 @@
if(E.web_ready == FALSE)
to_chat(H, "You need to wait awhile to regenerate web fluid.")
return
+ if(!H.Adjacent(A)) //No.
+ return
if(!isliving(A) && A.anchored)
to_chat(H, "[A] is bolted to the floor!")
return
if(istype(A, /obj/structure/arachnid))
to_chat(H, "No double wrapping.")
return
+ if(istype(A, /obj/effect))
+ to_chat(H, "You cannot wrap this.")
+ return
+ H.visible_message("[H] starts to wrap [A] into a cocoon!","You start to wrap [A] into a cocoon.")
if(!do_after(H, 10 SECONDS, 1, A))
to_chat(H, "Your web spinning was interrupted!")
return