diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index c4e06152a88..a0efece6db8 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -142,6 +142,17 @@ if(!get_trait(TRAIT_STINGS)) return if(chems && chems.len) + + var/body_coverage = HEAD|FACE|EYES|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + + for(var/obj/item/clothing/clothes in target) + if(target.l_hand == clothes|| target.r_hand == clothes) + continue + body_coverage &= !(clothes.body_parts_covered) + + if(!body_coverage) + return + target << "You are stung by \the [fruit]!" for(var/rid in chems) var/injecting = min(5,max(1,get_trait(TRAIT_POTENCY)/5)) diff --git a/code/modules/hydroponics/spreading/spreading_response.dm b/code/modules/hydroponics/spreading/spreading_response.dm index 46db4af57b4..d175fdda221 100644 --- a/code/modules/hydroponics/spreading/spreading_response.dm +++ b/code/modules/hydroponics/spreading/spreading_response.dm @@ -66,7 +66,13 @@ victim.buckled = src victim.update_canmove() buckled_mob = victim - if(victim.loc != get_turf(src)) - src.visible_message("Tendrils lash out from \the [src] and drag \the [victim] in!") - victim.loc = src.loc + if(!victim.anchored && !victim.buckled && victim.loc != get_turf(src)) + var/can_grab = 1 + if(istype(victim, /mob/living/carbon/human)) + var/mob/living/carbon/human/H = victim + if(istype(H.shoes, /obj/item/clothing/shoes/magboots) && (H.shoes.flags & NOSLIP)) + can_grab = 0 + if(can_grab) + src.visible_message("Tendrils lash out from \the [src] and drag \the [victim] in!") + victim.loc = src.loc victim << "Tendrils [pick("wind", "tangle", "tighten")] around you!"