Likewise, removed the spawn_xeno verb and made an equivalent bit of code in the FUN section of the secrets panel.
Fixed the create_xeno proc. It was supposed to ask you which type of alien to spawn but it was sending the popup to src, which should have been usr.
Create_xeno can now spawn queens and larva.
Create_xeno is fed a ckey (optional) rather than a ghost mob. Which will make it more versatile and reliable should clients log out during popups and such.
Created an client.is_afk(duration) proc. If the client has been inactive for duration frames (11 frames is roughly 1 second), it will return the number of frames it has been inactive. Otherwise it returns 0. If no duration value is given it defults to 3000 which is roughly 5 minutes. There's a bunch of code I need to replace with this which I will do after I've got the rest of the admin rank stuff finished as that takes priority.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5040 316c924e-a436-60f5-8080-3fe189b3f50e
SERVER HOSTS:
This commit replaces the existing admin-rank system. It is now more customizable.
Admin.txt essentially works the same as it always has. Each line should look like:
ckey - admin rank
There is now however, an admin_ranks.txt. This textfile allows you to define ranks like so:
admin rank +ADMIN +FUN +BUILD
the +KEYWORD are flags adding permissions to that rank. There are brief descriptions in the text-file explaining what they do.
You can now name the ranks anything you like, and give them the permissions you want them to have. This allows, for instance, ranks like:
Game Admin on disciplinary +ADMIN +BAN
This would give that game admin only the tools they need to admin. They would not have access to 'fun' verbs which control events and antags.
There's lots of things you can do. For instance, a coder rank whom can debug stuff but cannot do admin tasks:
Codermin +DEBUG +VAREDIT +SERVER
There's lots you can do. As it evolves it will hopefully become more flexible.
admin_ranks.txt defaults to use the old admin rank names.
Apologies in advance as there will be a lot of anomalies, such as ranks losing verbs they once had. Please let me know about any problems. I can fix them quite easily simply by moving verbs between the lists or splitting the lists up into new flags.
CODERS:
There is now a check_rights(flags) proc.
It check is usr is and admin and has -at least one of- the rights specified.
It checks > usr < not src, so keep that in mind!
If you need to check if something other than usr has specific tights, you can do if(holder.rights & R_ADMIN) etc.
KNOWN ISSUES:
+FUN probably needs to be split up into +MOBS and +EVENTS
In-game promotion/demotion is currently disabled. It will be readded after everything else works ok.
Erro's sql rights changes stuff is currently commented out. It will be re-added.
There are still many many verbs which need updating.
Apologies in advance for any inconvenience.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4991 316c924e-a436-60f5-8080-3fe189b3f50e
>dd_replacetext and dd_replacetext_case are now replacetext and replacetextEx respectively.
>replacetext and replacetextEx works using strings only; it doesn't convert it into a list and then back into a string.
Fixes some dumb-dumbs in textlist and text2listEx
> "<" where there should be a "<="
> no else case for when the separator is longer than the text (causing empty lists to be returned)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4971 316c924e-a436-60f5-8080-3fe189b3f50e
Added a config option config.automute_on It toggles automuting.
Admins cannot be muted.
Made the proc/cmd_admin_mute code shorter.
Automuting defaults to off
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4758 316c924e-a436-60f5-8080-3fe189b3f50e
•Centralised network, eliminated needless loops and worked out a better way than process(), since newscasters are a lot.
•Added Access News Network adminverb, which gives absolute freedom over the network. Check the Fun tab.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4595 316c924e-a436-60f5-8080-3fe189b3f50e
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.
To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"
If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
Code-wide changes: /mob -level procs:
equip_if_possible() is now known as equip_to_slot_or_del() to prevent confusion with equip_to_slot_if_possible() and to better describe what it does.
equip_to_slot_if_possible(item, slot, del_on_fail, disable_warning, redraw_mob)
equip_to_appropriate_slot() is now a /mob - level proc.
equip_to_slot() is an unsafe proc, which just handles the final step of actually getting an item onto the mob. It has no checks of whether it can or can't do that. Use equip_to_slot_if_possible() for that purpose.
New /obj/item -level proc:
/obj/item/proc/mob_can_equip(M as mob, slot, disable_warning = 0)
This proc can be used to determine whehter a mob can pick up an item from the item's side.
Carn, I'll need you to review code/modules/mob/living/carbon/human/inventory.dm to ensure that I'm not redrawing the mob too many times.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4423 316c924e-a436-60f5-8080-3fe189b3f50e
> A clown's medical, crew, and security records are updated with his newname. (read below for details)
> reject_bad_name() now checks for dumb names like "space","floor","wall","r-wall","monkey","unknown","inactive ai" (if you know any other important ones let me know)
> clname() [clown-name] and ainame() [AI name], procs which allow those players to rename themselves, were merged into /mob/proc/rename_self(var/role, var/allow_numbers=0)
This proc gives the mob 3 chances to name itself. It checks names using reject_bad_name() (the same thing that checks the round-start names). If it fails 3 times it will not change the name. If it succeeds it will call the proc in the next bullet point.
> /mob/proc/fully_replace_character_name(var/oldname,var/newname) will replace most references to a mob's oldname and replace it with newname. It updates name, real_name, mind.name, updates their id, updates their pda and updates all their data_core records (manifest records like medical, security, general, locked)
> data_core procs merged because they were massive and all identical.
> accidentally fixed an AI sound which accidentally played upon login. It conflicted with the "Welcome to the station crew" announcement. So I commented that out to try the 'new' fixed one. If people hate it I'll comment it back to how it was.
> naming a mob with the big name at the top of viewvars will use fully_replace_character_name()
> Removed an uneccessary regenerate_icons() proc from every player which spawns. Should speed up spawns a smidge
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4396 316c924e-a436-60f5-8080-3fe189b3f50e
As such, changelings can now be reported at round-end, even after gibbing. Resolves Issue 251
Changeling power proc_holders are now datums rather than objects.
Condensed all those changeling stings down a bit. This will make fixing issue 351 easier to fix
Replaced changeling fakedeath and a number of checks for the zombiepowder reagent with a bitflag: mob/var/status_flags & FAKEDEATH
setting the FAKEDEATH flag will make the mob appear dead in exactly the same way changeling parasting and parapens worked. I've updated changelings and zombiepowder to work with this flag.
Bug fixes for the staff of change. There was a type mismatch and I typo'd "alien" as "xeno" so xenos were not being randomly picked.
TODO:
changeling purchased verbs could probably be moved to mind/special_verbs. Likewise, other modular antag proc-holders can be merged with the changeling system using the same type of datum. (namely wizards)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4377 316c924e-a436-60f5-8080-3fe189b3f50e
Replaced mob/var/original_name with datum/mind/var/name.
Halved the speak-chances of every simple-animal because that constant squeaking was insufferable.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4346 316c924e-a436-60f5-8080-3fe189b3f50e
Minds part2 - Carn loses her mind.
The way datum/mind stuff works has been changed a lot. I really can't explain everything. If you have any questions it'd just be easier if you leave a comment or ask me in coderbus.
Generally, minds now represent IC characters rather than following a client around constantly. Minds can change owners, mobs, (names WIP).
Technical babble:
The var/current and var/original variables of the mind datum must always be of type mob/living (or null). Please do not mind.transfer_to(ghost_mob). If you want to ghost somebody use ghostize()! It will do all the technical stuff for you.
mob/dead/observer/var/corpse was removed. mob/dead/observer/var/mind is now used as a reference to the last mind the player had (so respawning code has something to reference), but also because mind.current is a far more useful way of tracking a corpse. If somebody triggers a mind.transfer_to() call on your corpse, your mind will be tranfered to another mob/living or something...that will then be considered your corpse. This could allow for more interesting mind_transfers. For instance, the "raise corpse" rune ghostizes any player in the corpse to be raised and selectes a random dead player to take possesion of their character! The person possesing them will have all of their memories, objectives, etc. The poor guy who was originally the owner cannot re-enter body if there is another player in his body...but if that player is ghosted he can once again return. Exorcisms anybody?
Changes to cloning and hydroponics. I will likely have to rework these later as they're hacky as hell right now.
A lot of stuff is now handled by Login/Logout rather than in hundreds of different places. One such example, mind datums get their variables updated at Login and Logout.
Fixed a few minor bugs. I'll update the issues manually in a bit because I literally cannot think atm.
TL;DR guide:
-If you want to make somebody a ghost use ghostize(). Or you will need to find a doctor to stitch your bits back on. :)
-You don't have to worry about making minds. Simply doing key="carnwennan" or whatever will either: A) make a new mind and initialise it if there isn't one or B) take possession of the mind currently attached to the mob.
-It's safe to transfer a mind even if a key isn't in-body (e.g. they are ghosted/admin-observing etc!) Minds have an active variable which tracks whether they are currently synced with a key. This is to avoid dragging ghosts back into their bodies when say, a wizard mind_transfers them.
-Transferring a mind whilst var/active=1 will cause the following: mob.key = mind.key. So no need to do that separately (in fact you'll lag things if you do, so don't)
-If you do want to initialize a mind manually, say if you don't have a client to login to the mob yet, simply do new_mob.mind_initialize(). Simple! When someody is logged into that mob they will take ownership of the mind and it will sync up.
NOTE: a lot is probably broken since this is a pretty massive change. Please let me know asap (with actual info! Shouting at me, "IT BORKED HALP", doesn't help)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4342 316c924e-a436-60f5-8080-3fe189b3f50e
This part focuses on:
-structuring the way silicon mobs initialise upon login (there was some hideous copypasta in Login() and New() which used spawn() to change the order of the calls so it was all jumbled up. I think I've got it sorted now.
-Borgs var/real_name was not initialising as "Cyborg". Meaning the name checks were kind of borked.
-Ghosts are now deleted at logout if they no longer have a key. This will stop unneeded ghosts being left lying around. It will not delete ghosts with keys assigned (so people can't respawn or anything). Removed all the del(ghost_ref) stuff I could find. Generally movign the key from a ghost should be the last thing you do as the ghost will be deleted by Logout. However I've put it in a spawn() to hopefully avoid coders accisentally using it in a way which causes runtimes.
-Fixed clone-plants spawning dud potato-people left, right and centre. They'll now dump seeds if it fails for whatever reason.
-Cultist and Rev status are removed at mob/living/silicon/Login() rather than having to be called on a special-case basis everywhere. This may not be necessary when this stuff is finished.
-Removed a bunch of :
-Commented mob/living/Login() with the rest of the antag-indicator code from cloning.dm and hydroponics.dm for any coders whom feel brave/suicidal to fix the related issues
Next on the agenda, replacing mob/var/original_name with datum/mind/var/name to fix the ticker runtimes
Then, fixing mind/proc/transfer_to(mob) once and for all. (There are issues with duplicate minds, role updates, inconsistent initialisation etc etc *yawn*
There's probably a few obscure bugs in there somewhere. Might want to hold off on the updates for a bit. Coderbus will likely spot them all by the end of the week.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4322 316c924e-a436-60f5-8080-3fe189b3f50e
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
-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
As such the same rules apply to all mobs now. They all make noise as they exit the vent. They can all be blocked by welded vents. They all cannot carry items through (except implants and facehuggers). They all have a delay in arriving at their destination.
This removes any meta "Vent noise! Must be aliums cos monkeys don't have that code!". Fixes a bug that stopped ventcrawl working. And, best of all, you can vent-crawl to any connected vent..not just one per area. :3
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4137 316c924e-a436-60f5-8080-3fe189b3f50e
-Added new Create Classified Report button for admins. It's a more discreet way for Centcom to communicate with the heads of staff without announcing it to the entire crew.
-Uncommented admin notices for cyborg lockdowns/releases
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4091 316c924e-a436-60f5-8080-3fe189b3f50e
Replaced every l_hand = and r_hand = and all that if(hand) crap to use standardised procs. This means we can use procs like Dropped() reliably as they will always be called when things are dropped.
Thorough documentation to come. But generally, if you want a mob's icons to update after deleting something in the inventory...use drop_from_inventory(the_thing_you_wanna_drop) just before deleting it. If you wanna put something in a mob's hands use put_in_hands() (or one of the variants). It'll try putting it in active hand first, then inactive, then the floor. They handle layers, overlays, screenlocs calling various procs such as dropped() etc for you. Easy
mob.equipped() is now mob.get_active_hand() because there was another totally unrelated proc named equipped() and stuff was confusing.
Weakening was made instantaneous.
Minor optimisations for human/handle_regular_status_updates(). I'll port these changes over to the other mobs next. Basically it should stop it constantly incrementing every status effect even after death.
umm... bunch of overlays related fixes... I think that's everything. :/
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3900 316c924e-a436-60f5-8080-3fe189b3f50e
- Added channel-specific admin muting. Admins can now mute someone from IC (say, me and whisper), OOC, PRAY, ADMINHELP (adminhelp, admin pm and asay) and DEADCHAT (say while dead and dsay)
- Added a (?) to adminhelps and prayers which displays the same quick overview that all the other (?)-s show, but for the person adminhelping or praying.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3888 316c924e-a436-60f5-8080-3fe189b3f50e
Updated adminwho so the plebs can see ranks.
Removed the admin message from view range changes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3545 316c924e-a436-60f5-8080-3fe189b3f50e
- rudimentary transformations from the player panel
- give spell
- make sound
- kill air
- make alien
- make metroid
- grant full access
- assume direct control
- select equipment
- spawn xeno
- gib will now log even when gibbing yourself
- gibself
- change view range
- call shuttle
- cancel shuttle
- Also removed the 'stabilize atmos' verb. I noticed it had all of it's code commented out, so it literlaly did not do anything.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3535 316c924e-a436-60f5-8080-3fe189b3f50e
- Made some changes to admin verbs:
- Rejuvenate verb removed from mobs, is now in the options panel above (heal).
- Drop everything verb moved into view variables, added a confirmation message.
- Mute verb removed from mobs, use the options panel.
- Warn verb removed from mobs, use the options panel.
- Grant full access moved to debug verbs.
- Rejuvanate as a verb also still exists in debug verbs.
These changes were made to make right clicking a mob not show a million unneeded verbs. They were moved based on the statistics gathered via feedback logging:
http://www.kamletos.si/tgdb/latest_stats.html#adminverbs
Please post any additional feedback on the admin forum.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3532 316c924e-a436-60f5-8080-3fe189b3f50e
TODO: I was intending to use dust to kill players off on a nuclear-loss. However dust() is very very broken. So I've hardcoded everything to die until I can fix dust().
Added an adminverb for 'Game Master's. It was a debug verb so I could test cinematics but I've left it in as it might be handy for events, especially if we get more cinematics. To access it type "cinematic" in full into the input bar as a Game Master, then follow the prompts. At the moment, it only handles nuclear stuff (that's all there is anyway). You can choose where the nuke detonated 0= on station; 1= near station but in space; 2= off the z-level. You can also force a cinematic from another game-mode to play with the prompt after that one.
Note: All mobs are buckled to a bed located inside the gameticker (odd I know) whilst a cinematic is playing. The bed is deleted afterwards releasing all players. If off_station=0 then all mobs will be killed too. This is to stop people running around and doing stuff during the cinematic. I really didn't want to add more variables/checks to mobs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3481 316c924e-a436-60f5-8080-3fe189b3f50e
- added feedback logging for newscasters
- added feedback logging for admin verbs
- added shuttle timers to escape pods
- added feedback logging to chemical reactions
- clipboard can now fit on your belt
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3465 316c924e-a436-60f5-8080-3fe189b3f50e
AdminHelps are now client verbs rather than mob verbs. Which means adminhelp can be called from cmd_admin_pm when an admin disconnects or something. This will stop non-admins getting the message "Client not found" (read as: license to grieffe) when an admin disconnects for whatever reason.
Moved AdminPM stuff to adminpm.dm
Fixed some run-times in posters and fixed posters eternally having the laying poster icon_state(whatever it was called) when something went awry.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3456 316c924e-a436-60f5-8080-3fe189b3f50e
Commented out the authentication system. It was the remnants of the old goon authentication stuff (or maybe even older) and wasn't actually used in our code at all (at least not in any useful way, it was merely called and short-circuited to 1, so all those if(authenticated) were totally pointless. This has removed 3 unused variables from every client, a bunch of unused variables from the config and two empty text files!
Committed (as a config option) a feature requested by Apoc station. It causes a 'reply to' window to popup when an admin PMs a non-admin player. It's meant to grab their attention so they can't say "I didn't see your PM". It defaults to off. To turn it on just uncomment the #POPUP_ADMIN_PM line in config/config.txt
Fixed a derp in isday where it was fetching the month instead of the day.
Removed medal references from Gib()
Removed the medal_hub global variables because they aren't used in any way shape or form.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3444 316c924e-a436-60f5-8080-3fe189b3f50e
runtime error: Cannot modify null.layer. proc name: done (/obj/effect/equip_e/human/done) usr: Ramona Fawkes (/mob/living/carbon/human) src: the human (/obj/effect/equip_e/human)
call stack: the human (/obj/effect/equip_e/human): done() the human (/obj/effect/equip_e/human): process()
runtime error: Cannot execute null.use(). proc name: attackby (/obj/structure/barricade/wooden/attackby) usr: Jeffery Long (/mob/living/carbon/human) src: the wooden barricade (/obj/structure/barricade/wooden) call stack: the wooden barricade (/obj/structure/barricade/wooden): attackby(null, Jeffery Long (/mob/living/carbon/human)) the wooden barricade (/obj/structure/barricade/wooden): DblClick(the floor (159,129,1) (/turf/simulated/floor), "mapwindow.map", "icon-x=15;icon-y=12;left=1;scr...")
Rewrote wielded weapons to be their own weapon subclass. There was no point having a var/wielded var/twohanded var/force_unwielded var/force_wielded for every damn item when there is only 1 wield-able weapon anyway. All the wield-able stuff is now in twohanded.dm
Changed the adminhelpsound to some creative commons sound I pinched. Until somebody can get a better one. I'm sick of MAAAAAAAAOOOOOOW.
All PMs trigger the adminhelp sound. That means when you OM a player they get the sound, if a admin is PMed they only hear it if their adminhelp sounds are enabled. This should allow people to get eachother's attention when t he chat is busy.
Fixed some bad code with poddoors (which is used for the shutters in QM)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3435 316c924e-a436-60f5-8080-3fe189b3f50e
Shuttle call/recall announcements are now more noticeable. Removed a few ways they could be spammed.
Cats and Dogs can see in the dark.
Recommitted some of the poop stuff by Doohl because, hell it's only one day and I don't hate fun.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3382 316c924e-a436-60f5-8080-3fe189b3f50e
Merged the Admin-PM verb and the PM stuff in Topic() as it was 99% the same code anyway.
Admin to Admin PMs are no longer annoying and LOUD: "-- ADMIN PRIVATE MESSAGE --"
All Admin PM messages to non-admins are now 'LOUD'.
Admin-PM verb is now sorted by Mob rather than client as per request
Can again PM mobs by right clicking them.
Apologies for totally missing the last 2 things on my last commit :S
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3381 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 424 (it was some code in turrets.dm which was setting all the turret controls in the lobby area to off...for no raisin.)
Admins can now PM people in the lobby
Admin-PM verb now uses clients instead of mobs
Removed a vulnerability in the PM system that allowed unauthorised access to a select few admin-tools.
Text changes in examine verbs for monkeys and humans (typos)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3366 316c924e-a436-60f5-8080-3fe189b3f50e
Game Admins and Game Masters can now toggle random events from happening during a round, it is also an option in the config file.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3017 316c924e-a436-60f5-8080-3fe189b3f50e
Moves /area/entered to its own file.
Adds a new area var called has_gravity. Determines if floor tiles count for movement control (planning on adding more, currently can only be badmined)
Adds a new mob var called lastarea that is updated with the area you're in every time /area/entered is called.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2917 316c924e-a436-60f5-8080-3fe189b3f50e
The singularity is now able to eat things like signs and chameleon projectors' projections.
A few other misc runtime fixes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2916 316c924e-a436-60f5-8080-3fe189b3f50e
Instead, the spellbook simply starts with an extra use. This will save you the trouble of re-memorizing if you do not want to take ethereal jaunt.
Put an Ion Rifle on the nuke ops shuttle which will hopefully help with nuke teams getting routinely destroyed by sec borgs.
Fixed a wizard spawn message which referred to a no longer existing item (it mentioned "two" artifacts in your pockets,though you no longer spawn with a scrying gem)
Added Magus Helm sprites/object, which as of now does not spawn and is just an alternative wizard hat (counts for spell requirements).
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2743 316c924e-a436-60f5-8080-3fe189b3f50e
Thanks to Exadv1 the reagent checking code for chem got a nice performance tweak.
Minor text change to the steal ai objective.
Few runtimes/nullchecks fixed.
HoS does not spawn with a flash, Warden does not spawn with a taser, Security officers now spawn with a flash.
Wizarditis has been uncommented and nerffed quite a bit.
Moved most of the suits over to the clothing module folder.
Force 0 items won't damage humans.
The two lockboxes have been readded to the armory.
The brigs extra large power cell has been cut in half. (still twice as large as normal apcs)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2480 316c924e-a436-60f5-8080-3fe189b3f50e
- The player panel now has a Compelte mute option, which mutes everything including adminhelps and admin pm-s.
- A person who is muted will now be informed he is whenever they try to speak/OOC/etc.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2391 316c924e-a436-60f5-8080-3fe189b3f50e
Communications.dm works once again.
Updated a few admin commands that I missed to work with the job datums.
Fixed a type path issue in the cult talismans.
Assembly remote signalers now iterate though their for loop properly.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2347 316c924e-a436-60f5-8080-3fe189b3f50e