anchor.diff:  	anchored = 1
   	var/busy = 0 	//Something's being washed at the moment
   
  -
  -
  -/obj/structure/sink/attack_hand(mob/M as mob)
  -	if(isrobot(M) || isAI(M))
  -		return
  -
  -	if(!Adjacent(M))
  +/obj/structure/sink/attack_hand(mob/user as mob)
  +	if (hasorgans(user))
  +		var/datum/organ/external/temp = user:organs_by_name["r_hand"]
  +		if (user.hand)
  +			temp = user:organs_by_name["l_hand"]
  +		if(temp && !temp.is_usable())
  +			user << "<span class='notice'>You try to move your [temp.display_name], but cannot!"
  +			return
  +
  +	if(isrobot(user) || isAI(user))
  +		return
  +
  +	if(!Adjacent(user))
   		return
   
   	if(busy)
  -		M << "\red Someone's already washing here."
  +		user << "\red Someone's already washing here."
   		return
   
   	usr << "\blue You start washing your hands."
  
positive.code: 	sleep(40)
  	busy = 0
  
  	if(!Adjacent(M)) return    //Person has moved away from the sink
  
  	M.clean_blood()
  	if(ishuman(M))
  		M:update_inv_gloves(0,0)
  	for(var/mob/V in viewers(src, null))
  		V.show_message("\blue [M] washes their hands using \the [src].")
  
  /obj/structure/sink/attackby(obj/item/O as obj, mob/user as mob)
  	if(busy)
  
negative.code: /obj/structure/sink/puddle/attackby(obj/item/O as obj, mob/user as mob)
  	icon_state = "puddle-splash"
  	..()
  	icon_state = "puddle"
  
  