Commit Graph

72 Commits

Author SHA1 Message Date
Chinsky
9befbd6aa9 Surgery done. 2012-10-14 20:31:07 +04:00
Chinsky
c3b53af100 Commiting for the night, in case KGB steals my laptop.
Pretty much finished surgery system.
-working appendectomy, bone surgery, eye surgery, face surgery, brain surgery (humans only) and metroid core surgery.

-moved operation stages tracking vars to one op_stage datum. Left brain opstage var alone because way too many things reference it.

-added bone gel and bone setter.

-added check for surgery tools, so new doctors won't beat shit out of patients on optable too often.

-pretty much emptied surgery_tols.dm, it was unneeded by this point.

Still need to test it more, slap sanity checks everyfuckingwhere.
Also more literate messages written with help of trained monkey (faux).
2012-10-14 02:15:23 +04:00
cib
fbc903e59c Added a new surgery system. 2012-10-12 11:09:21 -07:00
Erthilo
c00b0ae84d Added attack logging, some moderator groundwork, fixed alien species and save files. 2012-09-23 21:49:25 +01:00
Cael_Aislinn
e645d78f11 Merge remote-tracking branch 'remotes/git-svn' into bs12_with_tgport
Conflicts:
	baystation12.dme
	code/datums/organs/organ_internal.dm
	code/datums/vote.dm
	code/defines/atom.dm
	code/defines/procs/gamehelpers.dm
	code/defines/turf.dm
	code/game/algorithm.dm
	code/game/cellautomata.dm
	code/game/gamemodes/cult/runes.dm
	code/game/gamemodes/events.dm
	code/game/gamemodes/events/ninja_equipment.dm
	code/game/gamemodes/events/space_ninja.dm
	code/game/gamemodes/wizard/rightandwrong.dm
	code/game/jobs/job/captain.dm
	code/game/machinery/computer/ai_core.dm
	code/game/machinery/computer/law.dm
	code/game/machinery/computer/pod.dm
	code/game/machinery/computer/syndicate_shuttle.dm
	code/game/machinery/doors/firedoor.dm
	code/game/machinery/teleporter.dm
	code/game/machinery/wishgranter.dm
	code/game/objects/items/devices/uplinks.dm
	code/game/objects/items/weapons/cigs_lighters.dm
	code/game/objects/structures/electricchair.dm
	code/game/turfs/turf.dm
	code/game/vote.dm
	code/hub.dm
	code/modules/admin/admin_verbs.dm
	code/modules/awaymissions/zlevel.dm
	code/modules/client/client defines.dm
	code/modules/food/food.dm
	code/modules/food/meat.dm
	code/modules/food/recipes_microwave.dm
	code/modules/mob/living/carbon/carbon_defines.dm
	code/modules/mob/living/carbon/human/hud.dm
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/mob/living/login.dm
	code/modules/mob/living/simple_animal/life.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/new_player/login.dm
	code/modules/paperwork/filingcabinet.dm
	code/modules/paperwork/folders.dm
	code/modules/paperwork/photocopier.dm
	code/setup.dm
	icons/effects/genetics.dmi
	interface/interface.dm
	interface/skin.dmf
	maps/RandomZLevels/fileList.txt

various misc mergefixes and todos

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-09-22 21:29:04 +10:00
johnsonmt88@gmail.com
c7947ef236 File restructuring: ohgodihopenothingbroke edition.
All /world/ stuff that I've found is now in code/world.dm instead of being scattered throughout the code in 6-7 files.

*****IMPORTANT*****
This means that hub.dm is now part of world.dm. Server hosts using the hub will likely have to redo the hub/password variables!

Again, that stuff is now located in code/world.dm
*******************

The tester list has been removed as it is not in use.

/code/defines
- Moved atom.dm code into /code/game/atom.dm and atom_movable.dm
- Moved hub.dm code into /code/world.dm
- Moved the /defines/tanning into objects/item/sheets/leather.dm
- Moved /defines/area/ into game/area/
- Moved turf.dm code into the code/game/turfs folder and divided it up into meaningful places

A lot of the files in /code/game were placed in new areas since they really didn't have a reason to be there.
- algorithm.dm: 
- - The world stuff is in world.dm. 
- - countJob() and AutoUpdateTK() were removed entirely (unused).
- - AutoUpdateAI() is now in /mob/living/silicon/ai.dm

- atom_procs.dm was split into atom.dm and atom_movable.dm

- cellautomata.dm
- - World stuff was moved into world.dm
- - Atom stuff was moved into atom.dm and atom_movable.dm
- - Atom verbs were moved into code/game/verbs/atom_verbs.dm

- chemistry.dm
- - Beaker box code was moved into storage/misc.dm
- - The trash can and 'alechemy' paper were removed. (unused)

- Landmarks.dm was moved into /objects/effects/landmarks.dm

- prisonshuttle.dm, specops_shuttle.dm, syndicate_shuttle.dm and syndicate_specops_shuttle.dm have been moved into game/machinery/computer/

- status.dm and topic.dm code were moved into world.dm

- step_triggers.dm are now in objects/effects/step_triggers.dm

- throwing.dm was split into appropriate files (carbon mob code, atom_movable.dm, ect)

- vote.dm is now in code/datums

/code/game/asteroid was split up.
- turf.dm was moved into game/turfs/simulated/asteroid.dm
- artifacts were split up
- - Wish granter is now in game/machinery
- - The stealth box is gone (unused)
- - The list of 'space suprises' was moved into astroid.dm
- asteroid.dm, being the only file left, was moved into /code/game


and finally...
modules/mob/organs files are now in code/datums/organs

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4659 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-08 22:11:02 +00:00
Cael_Aislinn
56f5cb9e4e Merge tgstation r4633 into bs12_with_tgport
Conflicts:
	code/defines/obj/costume.dm
	code/game/gamemodes/cult/runes.dm
	code/game/machinery/computer/communications.dm
	code/game/machinery/telecomms/broadcaster.dm
	code/game/objects/structures/crates_lockers/closets/fitness.dm
	code/modules/mob/living/simple_animal/life.dm
	code/modules/mob/living/simple_animal/parrot.dm
	code/modules/power/power.dm
	code/modules/power/switch.dm

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-09-06 13:13:57 +10:00
quartz235@gmail.com
121a8f78e0 Fixes issue 836
- Bomb admin logs now tell what type of device (if any) was attached to the bomb

Fixes issue 873
- Fat people can now use their slots properly (thanks to erro for pointing out the cause of the bug)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4630 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-06 00:03:23 +00:00
Cael_Aislinn
dc3f6f2239 Merge branch 'bs12_with_tgport' of github.com:caelaislinn/Baystation12 into bs12_with_tgport (probably broke ZAS again)
Conflicts:
	baystation12.dme
	code/controllers/master_controller.dm
	code/defines/obj/weapon.dm

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-09-04 22:23:50 +10:00
Erthilo
d585e25227 Better pick up verb. 2012-08-29 21:00:27 +01:00
johnsonmt88@gmail.com
867b21c7ce File restructuring!
This brings down a bunch of defines from /code/defines/obj.dm unto their appropriate files.

I've moved morgue.dm from game/machinery into game/objects/structures since that file contains no machines.

I've reorganized the objects/items/stacks folder and made a 'sheets' and 'tiles' folder to keep things separate

I've separated stool_chair_bed.dm into its own folder which now contains the files: stools.dm, chairs.dm, bed.dm and alien_nests.dm to make it a little easier to go through.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4582 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-29 18:00:30 +00:00
johnsonmt88@gmail.com
fbd575f6ef Storage items that pick up all of x item on a tile will no longer pick up items they're not allowed to hold. Fixes issue 862.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4556 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-27 01:04:58 +00:00
johnsonmt88@gmail.com
28aabc9810 More file structure stuff!
Cleaned up the files themselves.
Everything in code/game/objects should now be in proper files or places with the exception of the files in the /weapons/ sub-folder.

There's two instances of me not following the exact file structure.
- /obj/item/brain has been moved to a file in mob/living/carbon/brain
- /obj/item/clothing/mask/facehugger has been moved into mob/living/carbon/alien/special
Both of these may not make sense according to the object structure, but they do make sense logically. If it's a problem just move them.

Next up: Finish the files in the weapon folder, then start moving defines down.


My god I hope I havent broken everything.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4547 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-26 03:32:58 +00:00
petethegoat@gmail.com
d6f2556945 First part of a fix for issue 818.
Removed some pointless, unused objects. (i'm looking at you, rubber chicken without a sprite)
Added a few new "features"- lighting cigs with igniters, and toggle-able bedsheets.
Slightly improved the cow gib sprite because if I don't commit it now I'll revert it.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4517 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-22 18:56:31 +00:00
elly1989@rocketmail.com
4073ac9b00 Replaced all 'file.extension' references with 'relativepath/file.extension' using a script by thvortex of ss13-daedalus.
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
2012-08-18 16:33:40 +00:00
elly1989@rocketmail.com
4fcbd6e169 Removes some seriously confused code regarding transferral of minds to ghosts upon death/gibbing.
The main problem is: if a mind is transferred to a ghost, objectives that have that mind as a target will treat the ghost as the target mob. Which is clearly a problem. This should fix exploits where people could force people to win/lose objectives via ghosting, gibbing, etc.

It should also eliminate any other weird bugs like the one Nodrak fixed a while ago where pais would keep their mind....meaning they were like, a cultist pai or something and could rat antags out to its owner using the HUD.

Removed some conditions from objectives (like those pertaining to the thunderdome) as they were bait for meta. >ghost >teleport to thunderdome >antag fails the objective she completed

Resolves issue 662

Fixes a few instances of original_name becomming null (there's still loads)


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4214 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-29 09:21:57 +00:00
sieve32@gmail.com
7bf6788082 -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
2012-07-26 03:04:05 +00:00
johnsonmt88@gmail.com
fa1d2bb873 Commit for Giacom:
Breaking bottles over people's heads!
- The bottle will be destroyed and a broken bottle will replace the old bottle
- There is a chance for a glass shard to be created
- The regents of the bottle get splashed onto the mob who got hit
- This affects alcoholic bottles, not to be confused with pill bottles or chemistry bottles.
- - Technically milk cartons and lime juice cartons, so they break as if they're glass.

Names in the PDA list are now ordered alphabetically.

Changelog updated

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3998 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-06 04:31:35 +00:00
johnsonmt88@gmail.com
3bd93d58a8 git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3990 316c924e-a436-60f5-8080-3fe189b3f50e 2012-07-05 21:06:44 +00:00
elly1989@rocketmail.com
48088b79d9 ugh...this was horrible. I'm really sorry if I fucked anything up, I was literally going braindead towards the end.
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
2012-06-23 21:24:45 +00:00
elly1989@rocketmail.com
1b6b13b6b4 Quick fix for resisting out of cuffs
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3827 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-15 06:10:35 +00:00
baloh.matevz
0c96a0f8eb - one file's proc definitions standardized
- added feedback logging for handcuff use

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3783 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-10 10:31:29 +00:00
baloh.matevz
e47f25ee09 - Ported cable restraints from Bay12. You make them by using a verb on cable coils. Takes 15 lengths to make, applied the same way as handcuffs, they have the same effects as handcuffs, but only take 30s to remove if you resist. They can also be removed by using wirecutters on a handcuffed mob.
- Added 4 new cable colors. Pink (ported from Bay12), orange, cyan and white.
- Engineer tool belts can now also spawn with orange wire, in addition to yellow and red.
- Tool closets and electrical toolboxes can now spawn with cables in any of the 8 colors.
- Added cablecuff.ogg from bay12, played when you apply cable cuffs on someone
- Added this stuff to the changelog

So yeah, some stuff is credited to bay12, tho some of it was nearly enough completely recoded.

Screenshots: 
http://www.kamletos.si/wire%20colors.png
http://www.kamletos.si/cuff%20restraints.png


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3770 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-09 07:29:12 +00:00
petethegoat@gmail.com
72c72c47d3 Sieve stuff, this is a stupidly big commit, I'm sorry, I really am.
Full details in this thread:
http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=8898
And a summary of the most important bits:
-Door animations no longer desync and do the open-close-open thing. That's been around so long most people don't even notice
-Welding tools no longer get their icons desynced
-Fixed unpowered mineral door runtimes
-Chemistry machines now require power to run
-Fixed the proc to apply radiation based on armor, which means that you can actually not die of radiation as quickly if you wear armor that protects against radiation
--By fixing this, it also fixed the singularity, so you might want to be careful next time you run by it naked
--Also means that radiation events take armor into account. How great
-Hopefully have a bugfix to prevent borgs from using lag to enter the game without an AI or laws, but I cannot test it myself other than that it didn't break anything
-Disposal sound can only play once every couple of ticks, so no more ear-rape by disposals!
-Lasertag guns can no longer be used to make lasergun turrets
-Cleaned up stray pixels on several doors and the lasertag guns

-Reworked how falsewalls work, now whenever you attack them with certain tools (drills, welders, etc...) it instantly turns them into a wall and pushes the attackby(), meaning you might not even notice that you just drilled down a falsewall, and at the very least they are much more fitting
-Omni-directional PA console! Never have to worry about rotating that fucking computer again, because now it does it itself!
-The Marisa robe that spawns in the theater no longer protects like armor
-Tweaked coefficient list for fake insulated gloves (misplaced punctuation messed up the list a tad)
-Moved falsewalls out of 'transfer_valve.dm' and into 'structures.dm'
-Tweaked smoothwalls so it only connects walls with like minerals (only seen effect is on the new walls)
--Also added appropriate signs to areas
-Reworked portable turrets to be a lot less laggy, now they determine the projectile type once, then save it so they don't have to go through else if chains every time they fire
-Added many sprites from WJohnston, but many are not fully implemented (Mostly floor ones)
-Added a vending machine for engineering, the Engivend. Apparently it was needed because of the lack of availability of the Autolathe or whatever.
-Added WJohnston's Dark Gygax sprites, then made a Death Squad Gygax out of them. A bit tougher than the standard Gygax, improved battery, and is pre-fit with gear, ideally for 'hit and run' tactics
-New Odysseus construction sprites, also removed the Odysseus Carapace in favor of plasteel like the Ripley, meaning they in terms of construction, a Ripley is equivalent to an Odysseus 
-Added an 'is_hot()' proc, when called it returns the temperature of the item in K, while taking into account things like whether or not the item is active or whatever
-Rewrote the Experimental Welding Tool, now instead of having a super-sized tank, it uses super-concentrated plasma that is turned into gas inside of it as its fuel source. Meaning, it will never have to be refilled, but it takes time for it to fill itself
-Added WJ's firelight sprites and code. Wanted to use them, but haven't had a chance to really implement them, but still, they're there

-Turrets made with lasertag guns now fire their respective team's bolt
-The turrets also automatically target anyone on the opposing team (But will continue to shoot at anyone, for shits n' giggles)
-Turrets get corresponding sprites based on team
-Shooting a turret with a different team's laser will disable it for 10 seconds
-You can also make ED-209's for your lasertag games/pissing off sec
-These are constructed just like a regular ED, but instead of a security vest and taser, it requires a lasertag vest and gun (same colors)
-When geared for lasertag, They will not arrest anyone nor melee them, only patrol (if set) and shoot
-They have their color schemes as well, and can be disabled just like turrets
-For both turrets and EDs, when geared for lasertag, they will not shoot anyone on the ground, this was due to very quickly learning how fucking OP that was for 1 turret to stunlock 3 people for eternity
-And when they are geared for lasertag, both the turrets and EDs have their access changed to maint, clown, and mime (This will not stop any of them from being shot, however)
-As a side note, you can also make lasertag stationary turrets for any map-related things

-Now walls are based on a plating system, meaning all walls have a girder with a mineral plating on top of it.
-As of right now, usable minerals are Silver, Gold, Diamond, Uranium, Plasma, and Sandstone (Lacking sprites for wood, *cough*)
-This also carries over to falsewalls, so you can make falsewalls out of any of those minerals
-Also, this carries over to powered doors, meaning you can construct useful doors out of minerals, so you could have actual diamond forts with doors requiring access to get in or whatever
-All of these are standardized, and for the most part work just like regular walls, meaning if you start slicing a wall, it will drop the mineral, or if you drill it, or whatever
-What was mentioned with the smoothwall tweak above, only walls of the same mineral will connect, so it all looks very nice
-Doors and walls made of uranium emit radiation when interacted with, with walls causing a 'ripple' effect, so the more walls nearby, the more radiation you get hit with
-Doors and walls made of plasma burn. It's a short, quick burn, but can easily be compounded in large structures
--As a note on plasma walls, I cannot get atmos and plasma walls to play nice (Since they are airless turfs), so I can't actually get them to ignite based on air temperature, but when they do ignite, they will auto-magically ignite nearby plasma walls, with a reduced temperature, meaning that if you want a massive chain reaction over a huge area, you better use something a bit hotter than a lighter
--Also, when plasma walls burn, they simply leave behind a girder, while doors leave assemblies
-Lastly, for nearly any kind of destructive action, Diamond walls are much more resilient, meaning they will take twice as long to be destroyed, and are immune to the effects of thermite
(Also, sprites for plasma walls and uranium walls are shite right now, waiting for replacements)
Update:
-Added cult walls as a 'mineral wall', meaning they will work on the same system and 'ReplaceWithMineralWall("cult")' will change any turf into a cult wall, hopefully for some cult-related activities soon

R&D stuff:
-Now instead of 1 sheet or ALL OF THE SHEETS, you enter a number as to how many sheets you want (it's sanitized to hell as well)
-Minerals no longer multiply when inside RnD machines. (Who fucked that one up? Goddamn)
-Mech fabricators are both deconstructable, and putting higher level parts actually improve it, each 'Tier' up is equivalent to +1 tech levels for that, so a High Powered Micro Laser would give the same bonus as +1 Material Research, a Pico Manipulator would give the same bonus as +2 Engineering, etc
-Complete with a shitty opened Mech Fab sprite!
-And not shitty overlays so autolathe's animate the material that is put in them, rather than give everything that's not glass the metal animation

LOL THE JOKES ON YOU I JUST COPY PASTED HIS TOPIC

added a few svn ignores, for thumbs.db and maps/backup

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3751 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-06 19:45:03 +00:00
johnsonmt88@gmail.com
fa65c484cd Welding tool: Mostly code-related, the players won't notice much.
- Welding tool code how has proper comments! Maybe not "proper" but at least I don't lie and say a proc is/does something that it doesn't actually do.
- Welders now start full of fuel instead of some random amount between 10-20
- Someone decided it would be a good idea to set the welding tool's 'on/off' var in a ton of attackby() procs. These objects and turfs shouldnt even touch this variable. This is why people have been noticing their welding being on without the sprite or damagetype and amount reflecting that.
- - I've removed a bunch of these instances but there are so many objects and turfs spread out through the code, there's no way to know if I've got them all (This is the majority of the files)
- - I've created a new proc in welding tools that checks to see if they are turned on or not. "isOn()"
- - Since I'm not sure if I've gotten every instance of this force-var-on, I've set the welding tool to update it's icon every process(). I hate adding checks like this to processes but it's necessary for now.
- Added a setWelding() proc. If you HAVE to turn the welding tool on or off, use this, don't just change the var. In fact, dont even touch the 'welding' var anymore
- Fixes issue 435

While changing the hundreds(literally) of cases of welding tool uses I've
- Changed some :'s (object:varorproc) I've come across into .'s (object.varorproc)
- Added checks to make sure the welding tool is actually on before using it (some attackby()'s didnt have this. Heck, some checked how much fuel you had, but didn't actually USE the fuel)
- Added sanity checks after some do_after()s that were missing them

Added traitor uplink items back to erro's stat tracker
- Added 'random' with the tag "RN"
- Added thermal meson glasses with the tag "TM"
- Reorganized uplinks.dm a little by moving the 'random' item generation to its own proc
- NOTE: I have absolutely no way to test this on my own, but it should work!

I've tested a bunch of construction/deconstructions with the welding tool, but again I've probably missed a few things. If there are any problems, please let me know and I'll fix them asap.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3741 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-04 22:56:11 +00:00
joeheinemeyer@gmail.com
461c9dac29 Made it easier to log into the Detective's computer, just click der button now, no need to have your ID in hand.
Fixed some flavor text for fire extinguishers.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3718 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-02 00:43:13 +00:00
vageyenaman@gmail.com
49647d329a There's a metric assload of stuff here, mostly in preparation to my massive traitor expansion, so I'll try to be brief:
- I added in the foundations for traitor factions. See factions.dm for all the different faction datums. They don't do anything yet.

- I completely ported mob/var/mutations from a bitfield to a generic list. Mutation enumerated-identifiers are added into this list. For instance, TK = 1, COLD_RESISTANCE = 2, XRAY = 3, etc... The purpose of this was because bitwise operations could not actually be used after a certain size (because BYOND is stuck in the 16bit era).

- I've added in completely-functional nano-augmentations. Check under implantnanoaug.dm for a list of implants and implaners. As mentioned previously, they are completely functional but may be slightly OP. Among these nanoaugs are Super Strength, Psionic Radar, Electric Hands, Energy Blade/Sword Synthesizer, Rebreather, Dermal Armor, Combat Reflexes, and Regenerative Nanorobots. I won't go into detail as to what they do, but hopefully they should be self-explanitory. If not, check out their descriptions in the file previously mentioned.

- Added in a future traitor item, the Mind Batterer. Along with it a new .ogg file.

- New telecomms bus mainframe sprite, thanks to WJohnston.

- New holdable shield, sprites courtesy of Muncher (i had to mangle the side sprites because of a technical little issue. I'll change it back to the original soon). It can be retracted and expanded. Probably only going to be given to traitors.

- A couple of minor bugfixes here and there, along with some code tidying.


Hope this isn't too large a commit. I intended it to be MUCH larger, but I've decided to split up my Traitor Factions expansion into smaller commits.



git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3692 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-29 03:16:47 +00:00
baloh.matevz
db3c2d3771 - Office chairs are now unanchored and can be pulled around, even when there is someone on them, making them the perfect prisoner transport vehicle~
- The extinguisher will now tell you when it's empty
- Office chairs and extinguishers.... OH HOW COULD I RESIST. Yes, you can have extinguisher derby races with office chairs :)

(Shame there are currently no office chairs on the map)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3615 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-19 00:01:04 +00:00
d_h2005@yahoo.com
f2dba4a5aa -Emergency Toolboxes now contain smaller, lighter fire extinguishers that actually fit inside them!
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3568 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-07 23:03:57 +00:00
VivianFoxfoot@gmail.com
4dfe439b1a Adds BS12 dismemberment. Not all features of it are implemented yet, but it should be equal to our previous system.
Adds greater changeling code, but doesn't change the genome count yet on it. 
Renames registered to registered_name on IDs because bs12 had it and it seemed like a good idea to do last night.  For some reason.   
Adds an afterattack to mobs that can be used.  (In fairness, lots of shit in attack_hand should be in there instead, like stungloves and stuff, to minimize duplicated code)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3537 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-01 15:33:29 +00:00
baloh.matevz
64bcc1c0f0 - Moved three (well two, one was doubled for some reason) screen/attackby() procs to appear AFTER the screen object is defined. They were in a random file instead of where the objects are. If you double-click and 'screen' object in the object browser it now takes you to the definition instead of some random file.
- Clicking a grille with a glass or r-glass sheet in your hand, when the grille is in one of your cardinal directions (North, south, east or west) will make you start building a window. It takes 2s to build the window, which spawns unfastened (same as when you create one.) This should make fixing damaged grille-window combinations easier. If you are standing on a grille and click it with a glass / r-glass sheet in your hand, the window will face the direction you're currently facing.

Screenshot:
http://www.kamletos.si/placing%20windows%20on%20grilles.PNG

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3081 316c924e-a436-60f5-8080-3fe189b3f50e
2012-02-11 00:04:21 +00:00
baloh.matevz
4c92d1c152 Added a cheap lighter so that zippos will have some company.
The cheap lighter can be purchased at vending machines and comes in 4 colors: green, yellow, cyan and red.

Technical info:

The path
/obj/item/weapon/zippo

was changed to 
/obj/item/weapon/lighter/zippo

The new lighter is
/obj/item/weapon/lighter/random

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3033 316c924e-a436-60f5-8080-3fe189b3f50e
2012-02-04 22:23:42 +00:00
petethegoat@gmail.com
692d03e91e Exciting new d20 sprites by TedJustice.
Dice will now face the side they rolled!

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2986 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-26 16:22:46 +00:00
VivianFoxfoot@gmail.com
8af7db096d Cleans up and uses less area checks, relying more on lastarea.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2949 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-13 06:01:32 +00:00
VivianFoxfoot@gmail.com
7ffdec48bf Fixes fire extinguishers in space, removes empty hand requirement, which wasn't supposed to be committed. My bad.
Adds the ability for door buttons to both close the doors they're attached to, and also a framework for controlling their other functions like idscan/bolts.
Adds a secure safe to the HoS's office and a new flashbang grenade!  
Secure safes can now hold 8 weight units of stuff by default.  
Adds a reply function to the comm. console prayers as well as a confirmation button on BSA.  


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2946 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-13 02:15:22 +00:00
VivianFoxfoot@gmail.com
8730d375cf Adds a new special object (stop) that can be used when you need someone to stop moving right away, even before the next life(). Used in door crushing to prevent people from inertiaing through. Checks for /obj/special/stop in loc every move. Compared to the number of other checks, I don't expect this to be an undo burden, but can be commented out in case of OH SHIT LAG under heavy load.
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
2012-01-06 06:24:55 +00:00
VivianFoxfoot@gmail.com
bf56fc6e99 Doors no longer close if there is a mob in the tile, a door can be hacked/AI overriden to close anyways and injure that mob as well as knock them down so they can be crushed again and again until they stop moving. (Currently: 35 brute and knockdown.)
The server master log now records attacks / emotes / PDA messages, as well as timestamping.  

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2899 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-02 08:42:44 +00:00
petethegoat@gmail.com
b9c3f9ce65 Added Scottzar's emitter projectile sprite. Thanks!
Fixed some issues with paper.
Slightly adjusted the atmospheric door sprites.
Added some SMES assembly sprites.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2829 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-27 04:19:18 +00:00
quartz235@gmail.com
c6e2da83b3 fixes for issue 260 issue 262 and issue 263
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2747 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-19 23:48:09 +00:00
mport2004@gmail.com
fbd0a5a9b5 Timers will no longer go off when you set them to 0 unless they are on.
Unsimulated turfs can be climbed on once more.
Small blobs can use the blob to move around in space.
Jetpacks now have a toggle for the stabilization.
Jetpack fuel use has been reset to .01.
Moved most of the tanks over to a new folder and files so they are not all crammed into one.
The meteor event actually spawns more than one wave worth of meteors.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2488 316c924e-a436-60f5-8080-3fe189b3f50e
2011-11-05 05:25:22 +00:00
petethegoat@gmail.com
2f84e522cb Stunglove overhaul: part two- gloves now lose all insulation when you wire them up.
Sleepypens have been removed!
Paralysis pens have been slightly nerfed, but look like regular pens.
Changed uplink implants to give five crystals instead of four.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2447 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-29 18:44:31 +00:00
baloh.matevz
d090ec651d You can now no longer toggle your flashlight, lantern, pen light or hardhat when in closets or other containers. This it to prevent some strange abnormalities. Urist said he'll fix it more in-depth by making a new item-lighting interfacing system, but after 3 weeks he has yet to deliver on his promise. Until then this is a temp-fix (And because I know Urist won't ever deliver, this is a permanent fix.)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2419 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-22 16:00:47 +00:00
uporotiy
d0ee297f99 This is why we can have nice things.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2393 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-19 16:39:48 +00:00
mport2004@gmail.com
46a7143e3a Energy projectiles work again.
Rewrote the job selection system to use bitflags and the jobs are now objects.
Fixed a path conflict with effect which caused a few things to be unable to be clicked on.
Commented out the job.txt, Urist if you still want it to load from the .txt give me a yell and I can update it to work with the job objects.
Fixed up the bits that were missing the slightly updated mob organ attack code.
Moved the traps file into unused.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2340 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-11 07:52:30 +00:00
mport2004@gmail.com
17ed3899c4 Fixed the map/code issues that the body bags caused.
/obj/effects is now /obj/effect.
/obj/station_objects is now /obj/structure.
Did a bit of minor blob work. 
The Bay 12 body bags were replaced with closets because having two sets of code that do almost the same thing is silly.
Changed back a few of the last jobproc edits as the remove from list before assign was a check to see if the mob was fucked up and if it was remove it so we did not check it again as it would still be fucked up.
The medbay/tox monkeys names are random once more.  More random name monkeys will help with changeling and clean up the observe/mob menus.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2324 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-03 10:28:57 +00:00
baloh.matevz
e8c6b08419 - Object tree grouped a bit more.
Two new categories were made: station_objects and effects. station_objects, which I'm sure someone will want renamed to 'structures' contains the objects which don't need process() or power code.

Effects contains objects which are either landmarks, triggers, spawners or decal.

Screenshot:
http://www.kamletos.si/new%20object%20tree.PNG

I didn't notice any bugs, but with a revision editing 276 files of byond code, you never know.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2323 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-03 06:54:28 +00:00
mport2004@gmail.com
a72e6d6a84 Projectiles cleaned up a bit and moved into a /modules folder.
Solars should work a bit better now.
Removed the old shield item as it has not been used in forever and was cluttering up some of the mob code.
IonRifle only has 5 shots before it needs to be reloaded down from 10.
Lowered the weakbullet's stun to match the taser.
You can no longer recall the shuttle on meteor.
Fixed a bug I caused on rev where if the revs were in space and dead it would count them as living.
Bit of blob work.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2220 316c924e-a436-60f5-8080-3fe189b3f50e
2011-09-18 07:27:05 +00:00
mport2004@gmail.com
c526717fbf Cleaned up:
Flashlights
Cigs/lighters
Solars

RCDs can no longer build airlocks on doors
Airlocks  now smash glass that is under them when they close
AI sat firewall that is not really quite a firewall removed
The solars will no longer update if they lack a controler
Cut down on machines that don't actually do anything like fake sleepers and shuttle engines
There is still a few shuttle engines around and I have no idea where, my map was already corrupted once by this so I am just leaving the define in for now.

After a talk with some of the head coders
Cyborgs can no longer be traitors at round start
Some of the off Z1 areas cleaned up


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2028 316c924e-a436-60f5-8080-3fe189b3f50e
2011-08-20 04:30:37 +00:00
vageyenaman@gmail.com
977ea89da9 Bugfixes:
- Security cyborgs' handcuffs now act as dispensers. This means they no longer transfer to the target when you attempt to handcuff them, instead, it creates new handcuffs and attaches them to the target.
     - Cyborgs can no longer put their module items onto people.
     - People in the starting screen can no longer see/hear admin dead-chatter.
     - Fixed some bugs with cyborg modules not deactivating properly in the HUD if you lost power or got locked down.
     - Final fix for Metroids.
     

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1986 316c924e-a436-60f5-8080-3fe189b3f50e
2011-08-06 18:08:28 +00:00
vageyenaman@gmail.com
c18a576136 There's quite a bit in this revision.
Admin changes:
     Admin attack logs now have a timestamps. Basically, before each log entry there is something that displays [hour:minute:second]. I plan on expanding this functionality to all kinds of logs, as well as creating a global attack log, but this will do for now.


Gloves:
     You can still electrify any gloves with a power cell, however you have to use wires on non-insulated (yellow) gloves to create a "ghetto-insulation" system. I might make these gloves' stun effects more watered-down than normal insulated gloves, but that will probably be for later on.


Bugfixes:
     Fixed some miscellaneous runtime errors, and more importantly, the shotgun. You can dry-pump it by clicking on it, which will eject any used shots or just make that badass "chuck-chick" sound to let everyone know you mean business. Combat shotguns can now shoot twice without the need to pump.

     I also possibly fixed the issue with metroids' AI process locking up. Someone's going to have to PM me on the forums to tell me if this worked or not, because I have not been able to reproduce the bug (although I do know where it's happening in the code).


Chemistry:
     Alright, so this is where the meat of this update is. In a previous revision (r1905) I mentioned the addition of a new "color" variable. This variable now has a use. When you use a spray cleaner, or a chem sprayer which now is significantly more powerful, the color combination of all the reagents inside the sprayer will be displayed instead of the plain old blue-white color. This will allow for people to easily distinguish reagents and colors, for instance, if you see some chemist running around spraying orange or purple stuff chances are that's acid he's spraying, so you should probably subdue him! 

     In addition, you will now be able to see beakers (large ones too) fill up visually. The color of the reagents inside the beaker is overlayed on top of the beaker. The colors may be subject to change to make them brighter or more easily identifiable by "category". Currently, most pharmaceuticals have a light pinkish color. Polytrinic acid has a distinct purple color, etc. However, with due time I can picture chemists mixing other, benign-ish reagents with harmful reagents so passerbys think that a chemist is spraying someone with something harmless, but in reality is spraying them with a bunch of PAcid. There are some consequences, for instance, concentrated acid is more powerful than watered-down acid.


Have fun with that.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1922 316c924e-a436-60f5-8080-3fe189b3f50e
2011-07-25 03:37:21 +00:00