diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm
index d7384c6b6d1..5ec2aae2118 100644
--- a/code/game/objects/items/devices/PDA/PDA.dm
+++ b/code/game/objects/items/devices/PDA/PDA.dm
@@ -233,14 +233,6 @@ var/global/list/obj/item/device/pda/PDAs = list()
/obj/item/device/pda/proc/update_label()
name = "PDA-[owner] ([ownjob])" //Name generalisation
-/obj/item/device/pda/proc/can_use(mob/user)
- if(user && ismob(user))
- if(user.incapacitated())
- return 0
- if(loc == user)
- return 1
- return 0
-
/obj/item/device/pda/GetAccess()
if(id)
return id.GetAccess()
@@ -252,7 +244,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
/obj/item/device/pda/MouseDrop(obj/over_object, src_location, over_location)
var/mob/M = usr
- if((!istype(over_object, /obj/screen)) && can_use(M))
+ if((!istype(over_object, /obj/screen)) && usr.canUseTopic(src))
return attack_self(M)
return
@@ -450,9 +442,8 @@ var/global/list/obj/item/device/pda/PDAs = list()
..()
var/mob/living/U = usr
//Looking for master was kind of pointless since PDAs don't appear to have one.
- //if ((src in U.contents) || ( istype(loc, /turf) && in_range(src, U) ) )
- if(can_use(U)) //Why reinvent the wheel? There's a proc that does exactly that.
+ if(usr.canUseTopic(src))
add_fingerprint(U)
U.set_machine(src)
@@ -710,7 +701,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
return
if (!in_range(src, U) && loc != U)
return
- if(!can_use(U))
+ if(!U.canUseTopic(src))
return
if(emped)
t = Gibberish(t, 100)
@@ -794,13 +785,11 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(issilicon(usr))
return
- if(can_use(usr))
+ if(usr.canUseTopic(src))
if(id)
remove_id()
else
usr << "This PDA does not have an ID in it!"
- else
- usr << "You cannot do that while restrained!"
/obj/item/device/pda/verb/verb_remove_id()
set category = "Object"
@@ -810,14 +799,11 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(issilicon(usr))
return
- if ( can_use(usr) )
+ if (usr.canUseTopic(src))
if(id)
remove_id()
else
usr << "This PDA does not have an ID in it!"
- else
- usr << "You cannot do that while restrained!"
-
/obj/item/device/pda/verb/verb_remove_pen()
set category = "Object"
@@ -827,7 +813,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
if(issilicon(usr))
return
- if ( can_use(usr) )
+ if (usr.canUseTopic(src))
var/obj/item/weapon/pen/O = locate() in src
if(O)
if (istype(loc, /mob))
@@ -839,8 +825,6 @@ var/global/list/obj/item/device/pda/PDAs = list()
O.loc = get_turf(src)
else
usr << "This PDA does not have a pen in it!"
- else
- usr << "You cannot do that while restrained!"
/obj/item/device/pda/proc/id_check(mob/user, choice as num)//To check for IDs; 1 for in-pda use, 2 for out of pda use.
if(choice == 1)
@@ -889,11 +873,10 @@ var/global/list/obj/item/device/pda/PDAs = list()
else
//Basic safety check. If either both objects are held by user or PDA is on ground and card is in hand.
if(((src in user.contents) && (C in user.contents)) || (istype(loc, /turf) && in_range(src, user) && (C in user.contents)) )
- if( can_use(user) )//If they can still act.
- if(!id_check(user, 2))
- return
- user << "You put the ID into \the [src]'s slot."
- updateSelfDialog()//Update self dialog on success.
+ if(!id_check(user, 2))
+ return
+ user << "You put the ID into \the [src]'s slot."
+ updateSelfDialog()//Update self dialog on success.
return //Return in case of failed check or when successful.
updateSelfDialog()//For the non-input related code.
else if(istype(C, /obj/item/device/paicard) && !src.pai)
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index 423f7523d67..d64258b66af 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -260,9 +260,6 @@
var/obj/item/device/flashlight/seclite/S = A
if(can_flashlight)
if(!F)
- if(user.l_hand != src && user.r_hand != src)
- user << "You'll need [src] in your hands to do that!"
- return
if(!user.unEquip(A))
return
user << "You click [S] into place on [src]."
@@ -276,9 +273,6 @@
if(istype(A, /obj/item/weapon/screwdriver))
if(F)
- if(user.l_hand != src && user.r_hand != src)
- user << "You'll need [src] in your hands to do that!"
- return
for(var/obj/item/device/flashlight/seclite/S in src)
user << "You unscrew the seclite from [src]."
F = null
diff --git a/code/modules/projectiles/guns/projectile.dm b/code/modules/projectiles/guns/projectile.dm
index f3f93102e14..dcb69e3d0eb 100644
--- a/code/modules/projectiles/guns/projectile.dm
+++ b/code/modules/projectiles/guns/projectile.dm
@@ -65,9 +65,6 @@
var/obj/item/weapon/suppressor/S = A
if(can_suppress)
if(!suppressed)
- if(user.l_hand != src && user.r_hand != src)
- user << "You'll need [src] in your hands to do that."
- return
if(!user.unEquip(A))
return
user << "You screw [S] onto [src]."
@@ -157,4 +154,4 @@
icon_state = "suppressor"
w_class = 2
var/oldsound = null
- var/initial_w_class = null
+ var/initial_w_class = null
diff --git a/config/admins.txt b/config/admins.txt
index 24afb4a7e9b..8ed07e75c36 100644
--- a/config/admins.txt
+++ b/config/admins.txt
@@ -8,6 +8,7 @@
# NOTE: syntax was changed to allow hyphenation of ranknames, since spaces are stripped. #
###############################################################################################
Optimumtact = Host
+kingofkosmos = Game Master
MrStonedOne = Game Master
microscopics = Game Master
Gun Hog = Game Master