Change examine() from an atom verb to a mob verb

Just in time for the feature freeze, a big change that will introduce bugs! Yay!
Mob verb is called verb/examinate(target), which just calls target.examine(user) and face_atom(target)
For explanation why, see http://www.byond.com/forum/?post=1326139&page=2#comment8198716
Long story short, mob verbs are much faster than object verbs. The goal is to make right-click menus populate faster.

Also changes a bunch of examine() procs to always, ALWAYS call the parent. Except mobs, but you have 1 guess why I'm not touching them. Mostly this affects obj/item/examine().
And also remove a whole shitload of pointless set src in view(2) kind of crap. Also span classes.
This commit is contained in:
MrPerson
2014-05-01 09:56:39 -07:00
parent dd668bf39b
commit 9d9a657acf
90 changed files with 335 additions and 573 deletions
+5 -7
View File
@@ -26,19 +26,17 @@
usr << browse(null, "window=stack")
..()
/obj/item/stack/examine()
set src in view(1)
/obj/item/stack/examine(mob/user)
..()
if(src.singular_name)
if(src.amount>1)
usr << "There are [src.amount] [src.singular_name]\s in the stack."
user << "There are [src.amount] [src.singular_name]\s in the stack."
else
usr << "There is [src.amount] [src.singular_name] in the stack."
user << "There is [src.amount] [src.singular_name] in the stack."
else if(src.amount>1)
usr << "There are [src.amount] in the stack."
user << "There are [src.amount] in the stack."
else
usr << "There is [src.amount] in the stack."
return
user << "There is [src.amount] in the stack."
/obj/item/stack/attack_self(mob/user as mob)
interact(user)