diff --git a/code/game/objects/items/mop.dm b/code/game/objects/items/mop.dm
index c5e92c4706..44ccd7aad5 100644
--- a/code/game/objects/items/mop.dm
+++ b/code/game/objects/items/mop.dm
@@ -15,7 +15,7 @@
var/mopping = 0
var/mopcount = 0
var/mopcap = 5
- var/mopspeed = 30
+ var/stamusage = 5
force_string = "robust... against germs"
var/insertable = TRUE
@@ -39,6 +39,12 @@
if(!proximity)
return
+ var/mob/living/L = user
+
+ if(istype(L) && L.getStaminaLoss() >= STAMINA_SOFTCRIT)
+ to_chat(user, "You're too exhausted for that.")
+ return
+
if(reagents.total_volume < 1)
to_chat(user, "Your mop is dry!")
return
@@ -49,11 +55,13 @@
return
if(T)
- user.visible_message("[user] begins to clean \the [T] with [src].", "You begin to clean \the [T] with [src]...")
-
- if(do_after(user, src.mopspeed, target = T))
- to_chat(user, "You finish mopping.")
- clean(T)
+ user.visible_message("[user] cleans \the [T] with [src].", "You clean \the [T] with [src].")
+ clean(T)
+ user.changeNext_move(CLICK_CD_MELEE)
+ user.do_attack_animation(T, used_item = src)
+ if(istype(L))
+ L.adjustStaminaLossBuffered(stamusage)
+ playsound(T, "slosh", 50, 1)
/obj/effect/attackby(obj/item/I, mob/user, params)
@@ -86,7 +94,7 @@
force = 6
throwforce = 8
throw_range = 4
- mopspeed = 20
+ stamusage = 2
var/refill_enabled = TRUE //Self-refill toggle for when a janitor decides to mop with something other than water.
var/refill_rate = 1 //Rate per process() tick mop refills itself
var/refill_reagent = "water" //Determins what reagent to use for refilling, just in case someone wanted to make a HOLY MOP OF PURGING
diff --git a/code/game/sound.dm b/code/game/sound.dm
index b7e4e4131e..1fafb4f34d 100644
--- a/code/game/sound.dm
+++ b/code/game/sound.dm
@@ -204,5 +204,7 @@
soundin = pick('sound/effects/clang1.ogg', 'sound/effects/clang2.ogg')
if("clangsmall")
soundin = pick('sound/effects/clangsmall1.ogg', 'sound/effects/clangsmall2.ogg')
+ if("slosh")
+ soundin = pick('sound/effects/slosh1.ogg', 'sound/effects/slosh2.ogg')
//END OF CIT CHANGES
return soundin
diff --git a/sound/effects/slosh1.ogg b/sound/effects/slosh1.ogg
new file mode 100644
index 0000000000..4da76aac49
Binary files /dev/null and b/sound/effects/slosh1.ogg differ
diff --git a/sound/effects/slosh2.ogg b/sound/effects/slosh2.ogg
new file mode 100644
index 0000000000..9df0243c4c
Binary files /dev/null and b/sound/effects/slosh2.ogg differ