Shower related bug fixes (#20018)

![Doom_cover_art](https://github.com/user-attachments/assets/216f8485-a8dc-490b-a526-f1acbfe7d8f6)


Fixed monkey cubes under showers from turning the game into Doom 3.
Fixed showers not showering you because of an improper early return on
wet floors.
Fixed blood overlays being wrongly cleared when you shower.
Sonme code improvements.
This commit is contained in:
Fluffy
2024-10-10 17:48:06 +00:00
committed by GitHub
parent af863b9f56
commit 30cf844cb4
9 changed files with 120 additions and 36 deletions
+17 -8
View File
@@ -333,18 +333,27 @@
for(var/rtype in rtypes)
. += src.trans_type_to(target, rtype, amounteach)
// When applying reagents to an atom externally, touch() is called to trigger any on-touch effects of the reagent.
// This does not handle transferring reagents to things.
// For example, splashing someone with water will get them wet and extinguish them if they are on fire,
// even if they are wearing an impermeable suit that prevents the reagents from contacting the skin.
/datum/reagents/proc/touch(var/atom/target)
/**
* When applying reagents to an atom externally, touch() is called to trigger any on-touch effects of the reagent
*
* This does not handle transferring reagents to things
*
* For example, splashing someone with water will get them wet and extinguish them if they are on fire,
* even if they are wearing an impermeable suit that prevents the reagents from contacting the skin
*/
/datum/reagents/proc/touch(atom/target)
SHOULD_NOT_SLEEP(TRUE)
//No point if it's getting deleted
if(QDELETED(target))
return
if(ismob(target))
touch_mob(target)
if(isturf(target))
else if(isturf(target))
touch_turf(target)
if(isobj(target))
else if(isobj(target))
touch_obj(target)
return
/datum/reagents/proc/touch_mob(var/mob/living/target)
if(!target || !istype(target) || !target.simulated)
@@ -44,7 +44,7 @@
if(istype(loc, /obj/item/gripper)) // fixes ghost cube when using syringe
var/obj/item/gripper/G = loc
G.drop_item()
var/mob/living/carbon/human/H = new(src.loc)
var/mob/living/carbon/human/H = new(get_turf(src))
H.set_species(monkey_type)
H.real_name = H.species.get_random_name()
H.name = H.real_name