diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm
index 40a9a5f4641..c6cd0c9117e 100644
--- a/code/game/machinery/deployable.dm
+++ b/code/game/machinery/deployable.dm
@@ -137,7 +137,9 @@
actions_types = list(/datum/action/item_action/toggle_barrier_spread)
var/mode = SINGLE
-/obj/item/weapon/grenade/barrier/AltClick(mob/user)
+/obj/item/weapon/grenade/barrier/AltClick(mob/living/user)
+ if(!istype(user) || user.incapacitated())
+ return
toggle_mode(user)
/obj/item/weapon/grenade/barrier/proc/toggle_mode(mob/user)
diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm
index a2640156520..5d3d10f28fc 100644
--- a/code/game/machinery/doppler_array.dm
+++ b/code/game/machinery/doppler_array.dm
@@ -48,9 +48,8 @@ var/list/doppler_arrays = list()
src.dir = turn(src.dir, 90)
return
-/obj/machinery/doppler_array/AltClick(mob/user)
- ..()
- if(user.incapacitated())
+/obj/machinery/doppler_array/AltClick(mob/living/user)
+ if(!istype(user) || user.incapacitated())
user << "You can't do that right now!"
return
if(!in_range(src, user))
diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm
index b3e4214e7af..6a2a1834e50 100644
--- a/code/game/objects/items/devices/geiger_counter.dm
+++ b/code/game/objects/items/devices/geiger_counter.dm
@@ -132,8 +132,9 @@
return 1
..()
-/obj/item/device/geiger_counter/AltClick()
- ..()
+/obj/item/device/geiger_counter/AltClick(mob/living/user)
+ if(!istype(user) || user.incapacitated())
+ return ..()
if(!scanning)
usr << "[src] must be on to reset its radiation level!"
return 0
diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm
index ed7c1c99d0d..97105279f32 100644
--- a/code/game/objects/structures/crates_lockers/closets.dm
+++ b/code/game/objects/structures/crates_lockers/closets.dm
@@ -235,10 +235,10 @@
else
togglelock(user)
-/obj/structure/closet/MouseDrop_T(atom/movable/O, mob/user)
+/obj/structure/closet/MouseDrop_T(atom/movable/O, mob/living/user)
if(!istype(O) || O.anchored || istype(O, /obj/screen))
return
- if(user.incapacitated() || user.lying)
+ if(!istype(user) || user.incapacitated() || user.lying)
return
if(!Adjacent(user) || !user.Adjacent(O))
return
diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm
index 6e64e3cd9e8..2e9935288f5 100644
--- a/code/modules/clothing/masks/gasmask.dm
+++ b/code/modules/clothing/masks/gasmask.dm
@@ -62,20 +62,21 @@
flags_cover = MASKCOVERSEYES
burn_state = FLAMMABLE
-/obj/item/clothing/mask/gas/clown_hat/AltClick(mob/user)
-
- var/mob/M = usr
+/obj/item/clothing/mask/gas/clown_hat/AltClick(mob/living/user)
+ if(!istype(user) || user.incapacitated())
+ return
+
var/list/options = list()
options["True Form"] = "clown"
options["The Feminist"] = "sexyclown"
options["The Madman"] = "joker"
options["The Rainbow Color"] ="rainbow"
- var/choice = input(M,"To what form do you wish to Morph this mask?","Morph Mask") in options
+ var/choice = input(user,"To what form do you wish to Morph this mask?","Morph Mask") in options
- if(src && choice && !M.stat && in_range(M,src))
+ if(src && choice && !user.stat && in_range(user,src))
icon_state = options[choice]
- M << "Your Clown Mask has now morphed into [choice], all praise the Honkmother!"
+ user << "Your Clown Mask has now morphed into [choice], all praise the Honkmother!"
return 1
/obj/item/clothing/mask/gas/sexyclown