diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm
index dc90e583805..39892a67e3a 100644
--- a/code/__HELPERS/unsorted.dm
+++ b/code/__HELPERS/unsorted.dm
@@ -966,12 +966,9 @@ var/list/WALLITEMS_INVERSE = list(
tY = max(1, min(origin.y + 7 - tY, world.maxy))
return locate(tX, tY, tZ)
-/proc/IsValidSrc(A)
- if(istype(A, /datum))
- var/datum/B = A
- return !qdeleted(B)
- if(istype(A, /client))
- return 1
+/proc/IsValidSrc(datum/D)
+ if(istype(D))
+ return !qdeleted(D)
return 0
diff --git a/code/modules/admin/verbs/massmodvar.dm b/code/modules/admin/verbs/massmodvar.dm
index d5d81db54be..364a5af4750 100644
--- a/code/modules/admin/verbs/massmodvar.dm
+++ b/code/modules/admin/verbs/massmodvar.dm
@@ -83,6 +83,10 @@
var_value = "\icon[var_value]"
default = "icon"
+ else if(istype(var_value,/client))
+ usr << "Variable appears to be CLIENT."
+ default = "cancel"
+
else if(istype(var_value,/atom) || istype(var_value,/datum))
usr << "Variable appears to be TYPE."
default = "type"
@@ -91,10 +95,6 @@
usr << "Variable appears to be LIST."
default = "list"
- else if(istype(var_value,/client))
- usr << "Variable appears to be CLIENT."
- default = "cancel"
-
else
usr << "Variable appears to be FILE."
default = "file"
diff --git a/code/modules/admin/verbs/modifyvariables.dm b/code/modules/admin/verbs/modifyvariables.dm
index 1a006fce385..29c0661f8bd 100644
--- a/code/modules/admin/verbs/modifyvariables.dm
+++ b/code/modules/admin/verbs/modifyvariables.dm
@@ -77,7 +77,7 @@ var/list/VVckey_edit = list("key", "ckey")
var_value = new type()
if("new datum")
- var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf))
+ var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf,/client))
var_value = new type()
if(!var_value) return
@@ -142,7 +142,7 @@ var/list/VVckey_edit = list("key", "ckey")
var_value = new type()
if("new datum")
- var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf))
+ var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf,/client))
var_value = new type()
if(!var_value) return
@@ -243,6 +243,10 @@ var/list/VVckey_edit = list("key", "ckey")
variable = "\icon[variable]"
default = "icon"
+ else if(istype(variable,/client))
+ usr << "Variable appears to be CLIENT."
+ default = "cancel"
+
else if(istype(variable,/atom) || istype(variable,/datum))
usr << "Variable appears to be TYPE."
default = "type"
@@ -251,10 +255,6 @@ var/list/VVckey_edit = list("key", "ckey")
usr << "Variable appears to be LIST."
default = "list"
- else if(istype(variable,/client))
- usr << "Variable appears to be CLIENT."
- default = "cancel"
-
else
usr << "Variable appears to be FILE."
default = "file"
@@ -401,7 +401,7 @@ var/list/VVckey_edit = list("key", "ckey")
L[L.Find(variable)] = new_var
if("new datum")
- var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf))
+ var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf,/client))
new_var = new type()
if(assoc)
L[assoc_key] = new_var
@@ -685,7 +685,7 @@ var/list/VVckey_edit = list("key", "ckey")
O.vars[variable] = var_new
if("new datum")
- var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf))
+ var/type = input("Enter type:","Type") as null|anything in (typesof(/datum)-typesof(/obj,/mob,/area,/turf,/client))
var/var_new = new type()
if(var_new==null) return
O.vars[variable] = var_new