diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm
index 38fe3df3b40..0b88d78a530 100644
--- a/code/game/objects/items/weapons/stunbaton.dm
+++ b/code/game/objects/items/weapons/stunbaton.dm
@@ -60,7 +60,7 @@
..()
return
- if(user.a_intent != "help")
+ if(user.a_intent == "hurt")
if(!..()) return
H.apply_effect(5, WEAKEN, 0)
H.visible_message("[M] has been beaten with the [src] by [user]!")
@@ -75,9 +75,14 @@
H.apply_effect(10, STUTTER, 0)
user.lastattacked = M
H.lastattacker = user
- charges--
+ if(isrobot(src.loc))
+ var/mob/living/silicon/robot/R = src.loc
+ if(R && R.cell)
+ R.cell.use(50)
+ else
+ charges--
H.visible_message("[M] has been stunned with the [src] by [user]!")
- playsound(src.loc, "sparks", 75, 1, -1)
+ playsound(src.loc, 'Egloves.ogg', 50, 1, -1)
if(charges < 1)
status = 0
update_icon()
diff --git a/code/game/objects/watercloset.dm b/code/game/objects/watercloset.dm
index 38b8c5ea470..1a0d1e09a34 100644
--- a/code/game/objects/watercloset.dm
+++ b/code/game/objects/watercloset.dm
@@ -58,7 +58,10 @@
var/obj/item/weapon/grab/G = I
var/mob/GM = G.affecting
if(ismob(G.affecting))
- if(G.state>1 && GM.loc == get_turf(src))
+ if(G.state>1)
+ if(!GM.loc == get_turf(src))
+ user << "[GM.name] needs to be on the toilet."
+ return
if(open && !swirlie)
user.visible_message("[user] starts to give [GM.name] a swirlie!", "You start to give [GM.name] a swirlie!")
swirlie = GM
@@ -101,7 +104,10 @@
var/obj/item/weapon/grab/G = I
var/mob/GM = G.affecting
if(ismob(G.affecting))
- if(G.state>1 && GM.loc == get_turf(src))
+ if(G.state>1)
+ if(!GM.loc == get_turf(src))
+ user << "[GM.name] needs to be on the urinal."
+ return
user.visible_message("[user] slams [GM.name] into the [src]!", "You slam [GM.name] into the [src]!")
GM.adjustBruteLoss(8)
else