diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm
index fcad40a0f0..2fb8566dc9 100644
--- a/code/game/objects/structures/mop_bucket.dm
+++ b/code/game/objects/structures/mop_bucket.dm
@@ -20,8 +20,8 @@
/obj/structure/mopbucket/attackby(obj/item/I, mob/user)
if(istype(I, /obj/item/weapon/mop))
if(reagents.total_volume < 1)
- user << "[src] is out of water!"
+ user << "\The [src] is out of water!"
else
reagents.trans_to_obj(I, 5)
- user << "You wet [I] in [src]."
+ user << "You wet \the [I] in \the [src]."
playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index 9239687dc7..f254d193f8 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -316,11 +316,11 @@
/obj/machinery/shower/proc/process_heat(mob/living/M)
if(!on || !istype(M)) return
-
+
var/temperature = temperature_settings[watertemp]
var/temp_adj = between(BODYTEMP_COOLING_MAX, temperature - M.bodytemperature, BODYTEMP_HEATING_MAX)
M.bodytemperature += temp_adj
-
+
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(temperature >= H.species.heat_level_1)
@@ -411,6 +411,11 @@
// Short of a rewrite, this is necessary to stop monkeycubes being washed.
else if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube))
return
+ else if(istype(O, /obj/item/weapon/mop))
+ O.reagents.add_reagent("water", 5)
+ user << "You wet \the [O] in \the [src]."
+ playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
+ return
var/turf/location = user.loc
if(!isturf(location)) return
diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm
index 223484b3d9..3a084fc6e4 100644
--- a/code/modules/reagents/reagent_containers/glass.dm
+++ b/code/modules/reagents/reagent_containers/glass.dm
@@ -221,20 +221,31 @@
flags = OPENCONTAINER
unacidable = 0
- attackby(var/obj/D, mob/user as mob)
- if(isprox(D))
- user << "You add [D] to [src]."
- qdel(D)
- user.put_in_hands(new /obj/item/weapon/bucket_sensor)
- user.drop_from_inventory(src)
- qdel(src)
+/obj/item/weapon/reagent_containers/glass/bucket/attackby(var/obj/D, mob/user as mob)
- update_icon()
- overlays.Cut()
+ if(isprox(D))
+ user << "You add [D] to [src]."
+ qdel(D)
+ user.put_in_hands(new /obj/item/weapon/bucket_sensor)
+ user.drop_from_inventory(src)
+ qdel(src)
+ return
+ else if(istype(D, /obj/item/weapon/mop))
+ if(reagents.total_volume < 1)
+ user << "\The [src] is empty!"
+ else
+ reagents.trans_to_obj(D, 5)
+ user << "You wet \the [D] in \the [src]."
+ playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
+ return
+ else
+ return ..()
- if (!is_open_container())
- var/image/lid = image(icon, src, "lid_[initial(icon_state)]")
- overlays += lid
+/obj/item/weapon/reagent_containers/glass/bucket/update_icon()
+ overlays.Cut()
+ if (!is_open_container())
+ var/image/lid = image(icon, src, "lid_[initial(icon_state)]")
+ overlays += lid
/*
/obj/item/weapon/reagent_containers/glass/blender_jug