diff --git a/code/_helpers/view.dm b/code/_helpers/view.dm
index 13ee837caa..be60a56697 100644
--- a/code/_helpers/view.dm
+++ b/code/_helpers/view.dm
@@ -10,3 +10,7 @@
viewX = text2num(viewrangelist[1])
viewY = text2num(viewrangelist[2])
return list(viewX, viewY)
+
+// Used to get `atom/O as obj|mob|turf in view()` to match against strings containing apostrophes immediately after substrings that match to other objects. Somehow. - Ater
+/proc/_validate_atom(atom/A)
+ return view()
\ No newline at end of file
diff --git a/code/modules/admin/admin_tools.dm b/code/modules/admin/admin_tools.dm
index 8b4e1ae44c..6bac63e7ca 100644
--- a/code/modules/admin/admin_tools.dm
+++ b/code/modules/admin/admin_tools.dm
@@ -57,9 +57,4 @@
onclose(usr, "admin_dialogue_log")
- feedback_add_details("admin_verb","PDL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
-
-
-// Used to get `atom/O as obj|mob|turf in view()` to match against strings containing apostrophes immediately after substrings that match to other objects. Somehow. - Ater
-/proc/admin_atom_validate(atom/A)
- return view()
\ No newline at end of file
+ feedback_add_details("admin_verb","PDL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
\ No newline at end of file
diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm
index 12d0aeb3df..6fe715bb74 100644
--- a/code/modules/admin/verbs/randomverbs.dm
+++ b/code/modules/admin/verbs/randomverbs.dm
@@ -629,7 +629,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
message_admins("[key_name_admin(src)] has created a command report", 1)
feedback_add_details("admin_verb","CCR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
-/client/proc/cmd_admin_delete(atom/O as obj|mob|turf in admin_atom_validate(O)) // I don't understand precisely how this fixes the string matching against a substring, but it does - Ater
+/client/proc/cmd_admin_delete(atom/O as obj|mob|turf in _validate_atom(O)) // I don't understand precisely how this fixes the string matching against a substring, but it does - Ater
set category = "Admin"
set name = "Delete"
diff --git a/code/modules/examine/examine.dm b/code/modules/examine/examine.dm
index f49c672bca..e619c5fec4 100644
--- a/code/modules/examine/examine.dm
+++ b/code/modules/examine/examine.dm
@@ -76,10 +76,24 @@
stat(null,"[description_holders["antag"]]") //Red, malicious antag-related text
//override examinate verb to update description holders when things are examined
-/mob/examinate(atom/A as mob|obj|turf in view())
- if(..())
+//mob verbs are faster than object verbs. See http://www.byond.com/forum/?post=1326139&page=2#comment8198716 for why this isn't atom/verb/examine()
+/mob/verb/examinate(atom/A as mob|obj|turf in _validate_atom(A))
+ set name = "Examine"
+ set category = "IC"
+
+ if((is_blind(src) || usr.stat) && !isobserver(src))
+ to_chat(src, "Something is there but you can't see it.")
return 1
+ //Could be gone by the time they finally pick something
+ if(!A)
+ return 1
+
+ face_atom(A)
+ var/list/results = A.examine(src)
+ if(!results || !results.len)
+ results = list("You were unable to examine that. Tell a developer!")
+ to_chat(src, jointext(results, "
"))
update_examine_panel(A)
/mob/proc/update_examine_panel(var/atom/A)
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index d9394cf3b1..3b4b478a7e 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -194,25 +194,6 @@
client.eye = loc
return TRUE
-//mob verbs are faster than object verbs. See http://www.byond.com/forum/?post=1326139&page=2#comment8198716 for why this isn't atom/verb/examine()
-/mob/verb/examinate(atom/A as mob|obj|turf in view())
- set name = "Examine"
- set category = "IC"
-
- if((is_blind(src) || usr.stat) && !isobserver(src))
- to_chat(src, "Something is there but you can't see it.")
- return 1
-
- //Could be gone by the time they finally pick something
- if(!A)
- return 1
-
- face_atom(A)
- var/list/results = A.examine(src)
- if(!results || !results.len)
- results = list("You were unable to examine that. Tell a developer!")
- to_chat(src, jointext(results, "
"))
-
/mob/verb/pointed(atom/A as mob|obj|turf in view())
set name = "Point To"
set category = "Object"