-Made all aliens use this when determining how much to recharge/heal.
-Deleted handle_enviroments which overshadow the base alien one.
-Made maxHealth actually do something. Every alien caste had their own updatehealth which did not use maxHealth, which was very stupid.
-Fixed an issue where a player could accidentally pick a breed of alien when typing. Larva will now have to use the evolve verb in order to evolve.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4353 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
Split a bunch of procs in helpers.dm into new files:
-helper_list
-helper_text
-helper_type2type
These files are sorted into groups internally. Hopefully people will make it easier for people to find useful procs.
I've added comments to a good chunk of these procs as well explaining what they do.
I've removed a few unused or unnecessary procs and fixed up a couple that were not working as intended.
I've also moved a mob proc 'get_equipped_items()' into mob/inventory.
All of the non-helper.dm files (besides mob/inventory.dm) are the result of fixing duplicate procs. It seems that there used to be text searching procs where one was case sensitive and one was not, and at some point someone removed the case-sensitivity of the case sensitive procs. I've re-added the case-sensitivity and as a result, I've had to go through extra files and ensure that they were calling the proper proc.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4341 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixed issue 742, the transfer will now use the absolute value.
-Fixed issue 743, someone forgot to change the label and the amount it takes. It was originally 200 but it was changed to 50.
Cleaned up alien/life.dm by removing unneeded code.
Made it so weeds don't heal you so god damn much.
Buffed eating people to heal you, now that nutriments are not handled.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4334 316c924e-a436-60f5-8080-3fe189b3f50e
-Made the telecommunication server and NTSL broadcast more robust so that having a HUB is an option, if someone decides to create their own network.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4325 316c924e-a436-60f5-8080-3fe189b3f50e
-Increased brightness of light bulbs to 4 (up from 3). This is so I wouldn't have to spam a whole bunch of light bulbs in darker areas to get the same mood it had before the darkness update. And since I don't need them any more, I've removed a bunch of light bulbs I added in in an earlier commit.
-Added a maint door to the Janitor's closet
-Map changes to library and medbay. Thanks, Dingus!
-Updated changelog
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4324 316c924e-a436-60f5-8080-3fe189b3f50e