Laser tag guns, practice lasers and staves of change no longer blow up in the clown's face. Fixes Issue 638.

Changed mode.txt from traitor to extended. Extended makes a heck of a lot more sense for testing purposes.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4172 316c924e-a436-60f5-8080-3fe189b3f50e
•Zere vill be order in mein FEA

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4173 316c924e-a436-60f5-8080-3fe189b3f50e
Cleaned up metroid/life() and metroid/AIprocess(). 
- Reduced metroid sight range from 12 to 7.
- Reduced metroid target hunting range from 30 to 7.
- Removed unnecessary loops and checks.
- I didn't do much with AIprocess() but it could really use some more work.

Cleaned out unnecessary checks from porta_turret process() and reduced the range from 12 to 7.

Removed handle_virus_updates from brains, metroids and aliens since there are no viruses that affect them.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4174 316c924e-a436-60f5-8080-3fe189b3f50e
-Added an "inuse" check for the Light Replacer.
-The Light Replacer will drop the replaced lights once again.
-Fixed a runtime with the Plantbag and the All-In-One grinder.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4175 316c924e-a436-60f5-8080-3fe189b3f50e
-Players not buckled in when the shuttle/pod moves or docks will get stunned for 5 ticks
-Shuttle doors now automatically open when it docks at centcom
-Screen shaking now works properly on shuttle/pods

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4176 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixed issue 658
-Changed the way light fixtures are constructed. You do not need a light to finish it and instead it will just create an empty light fixture, when you perform the final step.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4177 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixed shuttle stuns not affecting mobs without clients
-Shuttle stuns no longer affect non-carbon mobs

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4178 316c924e-a436-60f5-8080-3fe189b3f50e
-OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
Forced command_name to always be Central Command.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4180 316c924e-a436-60f5-8080-3fe189b3f50e
Fixed item_state for red and blue pens

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4181 316c924e-a436-60f5-8080-3fe189b3f50e
Attack verbs! 
Instead of 'x has been attacked with y by z' it now reads 'x has been 'y.attack_verb-ed' with y by z'!
Example:
Monkeyman has been bashed in the head with a riot shield by Nodrak!
or
Monkeyman has been stabbed in the chest with an energy sword by Nodrak!

- Every obj now has a list named "attack_verbs"
- When declaring an object, just use attack_verb = list("verb1", "verb2") and so on to initialize the list for that specific item.
- I've added a bunch of these to a ton of items already, feel free to modify or add more. Just try to stay away from gimmicky verbs (clown stuff being the exception.)

clothing.dm and spawner.dm only had a single definition in each of them, so their definitins have been moved to obj.dm and their original dm files deleted. I'm not sure about spawner but clothing had all of its other definitions removed recently.

radio.dm was a completely blank file, so it was removed.

Changelog updated

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4182 316c924e-a436-60f5-8080-3fe189b3f50e
-Added a new mushroom, the space shroom! (Original Title Do Not Steal) It has relaxing properties with a small amount of space drugs and sleeping toxin. I added this to allow the cutlery jobs (Chef & Bartender) a secondary access to anaesthetics; instead of having to ask Chemistry all the god damn time.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4183 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixes a bad check for radios, and I hate myself for missing it.
Thanks Mwahahaha for the bug report.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4184 316c924e-a436-60f5-8080-3fe189b3f50e
Secure closet 'Toggle Lock' verb now takes into account whether the locker is broken. Fixes Issue 683.

The admin 'Spawn Xeno' verb will not longer state that an admin spawned a xeno when they cancel out of the operation. Fixes Issue 688.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4185 316c924e-a436-60f5-8080-3fe189b3f50e
Renamed the Space Shroom to Reishi.
Fixed some mistakes.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4186 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a proc which logs some information about a client when they connect. The information gathered is:

- id (given by database)
- ckey
- firstseen (date and time)
- lastseen (date and time)
- last ip
- last conputer id

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4187 316c924e-a436-60f5-8080-3fe189b3f50e
Changed the dormitory area from /area/crew_quarters to /area/crew_quarters/sleep so that wizards and the like who try to teleport there wont end up in completely unrelated places like /area/crew_quarters/hor (RD's office)

Moved 'Check AI Laws' to the admin tab instead of being hidden away in the secrets window.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4188 316c924e-a436-60f5-8080-3fe189b3f50e
Fixed an issue with AIs not being properly listed (Gotta love that special-snowflake code).
While I was at it, implemented the attack sounds for simple animals, most importantly constructs. 

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4189 316c924e-a436-60f5-8080-3fe189b3f50e
- If someone enters the name of an AI or the word 'AI' in an adminhelp, a (CL) link is displayed along with the others, which is a shortcut to the 'check laws' secret panel button.
- The 'check laws' secret panel button now outputs AI laws, cyborg laws and also pai laws. It used to just be AI laws.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4190 316c924e-a436-60f5-8080-3fe189b3f50e
- Me and noddie were both working on the same thing at the same time. So one of the doubled procs has to go. And since I'm making the update it's gonna be his proc that goes :3

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4191 316c924e-a436-60f5-8080-3fe189b3f50e