Commit Graph
50 Commits
Author SHA1 Message Date
kyunkyunkyunandGitHub b0463d3c83 Convert most spans to defines (#31080)
* spanish?

* aaaagain

* keep maptext

* Update robot_items.dm

* Update span_defines.dm

* compiles

* Update silicon_mob.dm

* compile
2025-12-13 23:55:48 +00:00
warriorstar-orionandGitHub 3208049a8a Attack chain migration: structures. (#30365)
* Attack chain migration: structures.

* whoops

* wth
2025-09-14 19:21:36 +00:00
ContrabangandGitHub 1504ed98be massive burndown (#29894) 2025-07-27 20:52:39 +00:00
warriorstar-orionandGitHub 525c68d617 Attack chain, initial setup. (pull *immediately* for *any* TM issues) (#26834)
* refactor: Attack chain, initial setup.

* migrate curtain to make dreamchecker happy

* update thurible

* don't call attacked_by separately for legacy attack chain

* remove duplicate proc

* condense similar code, put allowances for legacy code in new procs

* update docs, include diagram source

* add comment on how to update diagram

* fix admonition

* mindflayer updates

* remove commented out code

* clarify all steps

* after_attack should be overridable

* whoops

* retrofit recent changes

* duh, can't restrict this yet because of tool_acts

* i hate ore bags with the fire of a thousand suns

* return correct value for object attack logic

* Various cleanups.

We don't want to attempt to pull stuff out of `/obj/item/attackby`,
because those pieces are part of the related objects' migrations, not
`/obj/item` itself. Attempting to do this causes knockon effects where
things expected to call e.g. `/obj/item/storage/attackby` in the call
chain were not ferried over to the new item interaction code, because
the related objects hadn't actually been migrated over yet.

I've used refactoring /obj/vehicle as the example for migrating
`attackby` methods instead.

* simplify some argument names

* fuck it

* make it do the thing

* Rename CI module call

* Prove that CI works

* improve test output

* aaand fix it again

* fix curtain tool interactions

* fix compile error

* fix compile error

* Better docs, introduce migration plan tool.
2024-12-02 23:36:36 +00:00
warriorstar-orionandGitHub 0ffa8303a7 Rename all non-snake_case types. (#27268)
* refactor: Rename all non-snake_case types (not procs or vars (yet)).

* completely dynamic update script

* might help to include the data

* update aa's scuffed python

* oh

* set script PR number

* run updatepaths again

* Add other table updates with JSON columns

* bump SQL version

* just fucking end my life

* move JSON data
2024-11-30 19:08:45 +00:00
08b74db517 BRPD Auto-wrenching (#26855)
* Modified the RPD auto-wrenching behaviour
* Removed tool requirement for auto-wrenching
* Allowed the BRPD to auto-wrench remotely
* Added a TGUI toggle for auto-wrenching

* Added a Line of Sight check for the BRPD
* Readded missing UI buttons

* Tweaked disposals construction
* Disposals objects can't be anchored if there's floor tiles
* Bins, chutes and outlets now need a constructed trunk to be anchored.

* Changed LoS check, added sounds, stopped station auto-wrench.

* Final touches for the RPD
* Added sounds when wrenching occurs

* tgui bundle

* Consolidated all RPD related sounds to the RPD code

* removed some redundant things I forgot about

* tguibundle

* span classes and tgui bundle

* Applying lewcc's suggestion

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: Toastical <vnndvp@gmail.com>

* applying lewcc's 2nd suggestion

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: Toastical <vnndvp@gmail.com>

* Applying contrabang's suggestions + added marks in pipe.dm

* typos n stuff

* tgui bundle

* Update code/modules/recycling/disposal-construction.dm

Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

---------

Signed-off-by: Toastical <vnndvp@gmail.com>
Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
2024-11-03 13:47:20 +00:00
BurzahandGitHub c434f08f4f Replaces info class with notice and purges info (#26421) 2024-08-13 09:46:58 +00:00
495afc5e60 Moves almost all wrench checks in attackby to wrench_act() (#25687)
* wrench a bunch of acts

* atmospherics

* some last few things

* last iswrench changes for anything that isn't construction

* Update code/game/machinery/pipe/pipe_construction.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>

* thank you dgamer

* oopsie daisy

* tests and addresses some introduced bugs

* proper testing

* proper ci

* Update code/game/objects/structures/fluff.dm

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>

* Update code/game/objects/structures/fluff.dm

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>

* thank you burza 🙏

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

* Update code/modules/recycling/disposal-construction.dm

Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

---------

Signed-off-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2024-07-30 13:51:00 +00:00
GDNandGitHub 35754c77ea Verb cleanup (#22224)
* Verb cleanup

* rest of the object verbs

* little more object cleanup

* more changes

* last of it

* this too

* tgui

* code review

* time to go
2023-11-12 20:19:17 +00:00
warriorstar-orionandGitHub a7d09cf033 Whitespace cleanup part 2. (#19891) 2022-12-24 18:38:43 +01:00
Vi3triceandGitHub f4b37b4177 Port TG updating appearances (#17943)
* Get pants that match or else you gonna look silly yo

* Posters

* Fix other hud elements

* Rereviewed

* Update shotglass.dm

* Fix for new merged PRs

* Typo

* Coming across other stuff

* Update theblob.dm

* No takebacksies

* smh i forget to leave a comment

* Updated for the detgun and cards

* Should have rerun langserver again

* No longer plastic, more in scope

* Damn you bluespace

* Reverting turret logic, out of scope at this point

* Tweak that part

* Went over energy guns again, and fixed UI White's sprite sheet

* Welding masks, glasses, and JUSTICE

* Update portable_atmospherics.dm

* Cleaning up, clearing things up

* Review and suggestions

* Update valve.dm

* More tweaks

* Missing character

* Not distinct lightmasks, so they can be overlays

* Update generator.dm

* Add parameter so holodeck doesn't try to make a perfect copy

* Update unsorted.dm

* Spiders

* Better fix for spiders, fix vamps too

* Ghosts

* Update telekinesis.dm

* Cleaning up old procs

* It's set up to not copy datums... Unless they're in a list

* Donuts, duct tape, and detgun. D3VR coming to Early Access

* Update procs that interact with doors so they call update_state instead

* Forgot one spot, and actually might as well just force lock

* Cleaning up other things... Sigh, and kitty ears

* oops

* Getting used to how it works

* blinds

* Going back to the suit obscuring thing, so it doesn't update all the time

* Missed that from merging master

* I made this PR and forgot about it

* Fix runtimes in cards

* Make things a bit more unified

* Update update_icons.dm

* yarn, really?

* Update library_equipment.dm

* Update shieldgen.dm

* Every time Charlie merges something, I go back and see if I can improve things further

* what's this? more?

* Update misc_special.dm

* wow, paper

* Review

* More reviews

* To be sure, seems like being broken messed something sometimes

* Brought airlocks closer to how TG works to iron out some stuff

* Pizza and morgue

* Doesn't seem to hurt, tried with holodeck

* Revert "Doesn't seem to hurt, tried with holodeck"

This reverts commit 158529302b.

* Icon conflict

* Fix organ damage

* Don't ask how. Why. It's like that on prod too.

* Cutting down on things and updating from TG.

* More flexible. Just in case the thing you stuck it on didn't destroy.

* Hydro was one the things I touched earlier on, better rework it

* Reviews

* Cleaning up further, also bri'ish

* Undo a change I did, and switch over to a more recent implementation

* Update biogenerator.dm

* Rolling back to old airlocks, but with new duct taped note

* Functionally the same. I'd just rather not have the smoothing happen there

* Went over APCs again

* Fix welding helmet names in species files

* Update airlock.dm

* Update persistent_overlay.dm

* Oh, topic
2022-07-21 08:11:59 +02:00
KalevTaitandGitHub 938135f3d8 modules misc (#18315) 2022-07-20 22:56:34 +02:00
AffectedArc07 f2770ed6be Merge remote-tracking branch 'ParadiseSS13/master' into brutal-part1 2021-03-11 18:41:17 +00:00
SabreMLandGitHub 98a61617be Commands > Object (#15636) 2021-02-28 12:46:31 +00:00
AffectedArc07 f5f97882cf BRUTAL Part 1 - No proc var/ in procs 2021-02-01 14:10:08 +00:00
Fox McCloudandGitHub de795c4e31 Radiation Refactor (#15331)
* First Commit

* visible radiation and engine goggles

* correction

* t-ray fix

* further adjustments and fixups

* gieger addition and cleaning fixup

* yet more fixes

* styling fixes

* fixes

* human glowing fix

* do the merge conflict avoidance dance

* Update supermatter.dm

* supermatter rads

* mapping in

* radiation doors

* yeah yeah line endings

* clean up

* styling issues

* showers
2021-01-24 22:03:13 +00:00
AffectedArc07andGitHub 43ee2488c7 More New() -> Initialize() for /obj/structure (#15158)
* More New() -> Initialize() for /obj/structure

* Updates these

* Tweaks + Fixes
2020-12-29 10:42:39 -05:00
AffectedArc07andGitHub 04ba5c1cc9 File standardisation (#13131)
* Adds the check components

* Adds in trailing newlines

* Converts all CRLF to LF

* Post merge EOF

* Post merge line endings

* Final commit
2020-03-17 18:08:51 -04:00
CitinitedandGitHub fddff1049b [Testmerge ready] Ports tool behaviours; refactors all tools; adds functionality for self-filling reagent containers (#11700)
* Adds support for self-filling reagent containers

* Sets tool_behaviour on the default set of tools

* Fixing merge conflicts

* Refactors welder to use tool behaviour

* The refactor: part I

* The refactor: part II

* Tool Refactor Part III: Revenge of the Maint

* Tool Refactor Part IV: A New Hope

* Tool Refactor Part V: The Oldcoder Strikes Back

* Tool Refactor Part VI: Return of the Coder

* VII

* Holy shit, it compiles?!

* Nannek I completed your TODO, you owe me ice cream

* Tool helpers; telepad is compliant

* Bugtest, Round 1: Fight

Fuck refactoring disposals

* Buggfixing, Round 2: Electric Boogaloo

* Personal crafting uses tool behaviours now

* Construction datums use new tool behaviours; better way of handling fueltank refuelling; more bugfixing

* multitool_check_buffer change; removes some useless things in tool_helpers

* proc name change

* TRUE/FALSE changes

* Bugfixing, Round 3: A Good Day To Bugfix Hard

Fixes multiple issues raised by the testmerge

* Minor style changes
2020-02-15 13:31:08 -07:00
Fox McCloud 20c4cf0a08 for-if-I-stand-I-stand-by-his-will-alone 2019-10-03 19:52:03 -04:00
joep van der velden 2f9be72b5b Fixed it 2018-09-26 17:05:48 +02:00
Kyep 1e894f11ee CrazyLemon RPD changes 2018-08-15 22:36:53 -07:00
Citinited 29c6e6d69b A bunch of refactoring; RPD runtimes if a forbidden pipe is attempted to be dispensed; names loose disposals pipes 2018-07-16 00:23:03 +01:00
Citinited 2ec3c797fd RPD refactor: part 2 2018-05-30 21:47:03 +01:00
Citinited ce42a6d952 RPD refactor
Adds rpd_act proc to do stuff instead of doing it all in one big
afterattack proc
Removes RPD_ALLOWED_HERE flag as it is now redundant
2018-05-30 21:47:02 +01:00
Citinited 613c317b38 Hopefully fixes all dumb disposals nullspace shit 2018-05-06 01:16:57 +01:00
Fox McCloud 5c4aa9b3fd Removes All Weapons 2018-04-15 16:25:56 -04:00
AurorabladeandFox McCloud 476cdc3e06 Blood Refactor (#6220)
* commit for branch swap

* branch swap again

* BLEED

* trying to clear up compile errors

* i killed everything when i tested this...

* restorealltheblood

* I REMOVED A THING

* well some progress

* stop bleeding

* got to swap branches again.

* grr

* damn bloodcolors

* Squash everything

* color....colourrrrrrr

* color....colourrrrrrr

* well now that updated the branch...

* Changes

* Some tweaks..before i upload something major

* COLOR NOT COLOUR...COLOR

YES I KNOW NOT EVERYONE SPELLS IT LIKE THAT BUT MY GOD

* Foot print shit..

blood coloring is going to be PAIN

* trying to handle some colors..maybe.

* blood colorsing sucks..di i mention this?

* commenting cod malfunctions.

* Changes

* lets try this

* Its too late at night.

* blargh

* woops

* almost works...

* progress..

* Branch swap

* figured out the overlay issue....

* BRANCH SWAP

* BLARGH

* fixed merged conflicts..expect something to be horribly wrong.

* bunch of changes

* Major Fixes

 - Moved blood_state and bloodiness var definitions to
 /obj/effect/decal/cleanable/blood as well as /cleanable/Crossed(), in
 order to make blood color work properly.
   - These were not used by any other decal, so it was pointless.
 - Tweaked human/add_blood so that hand_blood_color uses the correct
 value now.
 - Corrected gibs having the wrong basecolor.
 - Tracks of different blood colors will no longer combine weirdly, and
 will instead form seperate overlays.
   - This also fixes all of the issues with tracks in general and not
   updating correctly.
 - Fixed transfering blood in add_fingerprint; the old detective code
 didn't use the new format for add_blood().
 - Fixed xenomorphs causing runtimes in makeTrail(), and gave them their
 own trails. Sprites should probably be brightened later.
 - Fixed mobs occasionally randomly having their blood_DNA list reset.

* may have accidently removed shit.

* Mrowl

* stiff

water is not bleeding
lowered trail making threshold

* tweaks then conflcits

* weee

* indent

* some tweaks

* somefox tweaks.

* derp

* why won't they bleed!?

* BLEED DAMMIT

* Flattist comments and removes simple animale blood volume

Cause i cannot get it to work right.

* PRAISE FLATTIST

* Simple animals have a blood volume now

Bug with trail fixed.

* changes

* thanksmrowlmrowl

* exotice blood trails

* makesure is an exotic bleeder has a bleed rate first...

* FoxBoxTweakSox

* BoxVoxSoXFox

* ONE MORE THING

* animalsbleedreds

* Buh? BUGH!

* thisismescreaming

* removing note needed thing

* Color changes but the rabbit hole continues.

* This is not pretty....

* wot

* IT WORKS DAMMIT

* colors.

* germaphobic commit..

* we have to use the old system

* nothing to see here

* doubleprocarady

* try to fix mulebots

* mulebot fixed

* DONE
2017-07-11 16:49:11 -04:00
Mark van AlphenandGitHub 93470e3570 Merge branch 'master' into zefix 2017-03-09 17:20:31 +01:00
Markolie 3aa1399995 Implement usesound/toolspeed 2017-03-07 16:46:28 +01:00
Markolie 02c4cd26f4 Final fixes 2017-03-05 16:42:14 +01:00
Fox-McCloud 0870c66303 tweak 2016-07-26 14:02:07 -04:00
Fox-McCloud d83fe43331 tweak 2016-07-22 19:25:07 -04:00
Fox-McCloud 451044863e Alt Click Madness 2016-07-22 16:09:16 -04:00
Tigercat2000 78f53553f8 Reduce lines by removing blank lines added by PJ's script 2016-04-05 08:25:57 -07:00
Tigercat2000 9d430844c3 Replace most (if not all) output << operators with to_chat(user, message)
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.

Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
2016-04-05 08:15:05 -07:00
Tigercat2000 b0ef041bd9 Fix disposal pipe icon issues, unify slightly, little bit of unrelativing 2015-10-15 10:13:43 -07:00
Fox-McCloud 7c29e59784 Materialized Datums 2015-09-04 01:40:06 -04:00
Tigercat2000 7f4ac72910 Progress bars + Wall Rationalization
This commit does the following:
 - Ports progress bars from -tg- (tgstation/-tg-station#9921)
 - Refactors wall attackby code to make it 100% less insane; Instead of
   manually checking every little thing, it uses do_after,
   consequentially, making the new progress bars affect dealing with walls
   as well.

Wall code makes a tiger sad.
2015-08-31 13:38:51 -07:00
Fox-McCloud 0dbea7621f The Great Del() Cull of 2015 2015-07-09 02:48:34 -04:00
Markolie 672305e034 Adds a "params" parameter to attackby(), so it keeps track of pixel_x and pixel_y among other things 2015-02-22 22:12:11 +01:00
daniel.cf.hultgren@gmail.com 7b6e58969f I'm back with the greatest feature additions ever, as before!
* You can now dispense sort junctions from the disposal dispenser.
* Sort junctions can now properly be unwelded.
* You can now change a sort junctions filter using a package tagger (examining a sort junction shows its current filter).
This also means that you can now construct a disposal and package system entirely from scratch!

* Updated the package tagger with a slightly updated interface, and more user feedback.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4742 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-23 18:53: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
sieve32@gmail.com 459c558898 -Make holodeck eswords a child of obj/item/weapon/holo instead of regular eswords, clumsy check removed as a result, and you can no longer do things like cutting through walls or doors or what have you. (Fixes Issue 665)
-Redid icons to be more optimized at compile by setting icon = 'icons/folder/icon.dmi' instead of just icon = 'icon.dmi', meaning that Dream Maker doesn't have to search through every single file for every single .dmi. This shouldn't lead to any errors because of how I went about it, plus the fact that Dream Maker would have freaked out if I screwed something up. Also moved around 2 icons that weren't sorted well.

r4146 compile time: 1 minute, 40 seconds
r4147 compile time: 45 seconds

[VGTG]

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4147 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 00:48:51 +00:00
giacomand@gmail.com 82886383e3 -Fixed issue 673, it will delete the glass if none remains.
-Added issue 672 's enhancement request. Disposal systems should leave fingerprints and transfer prints when building/deconstructing.
-You can put the Light Replacer on your belt.
-Gave the Light Replacer FPRINT and CONDUCT flags.
-Gave the Light Replacer origin tech.
-The Science department can now research the Light Replacer and build it. You need a required tech of "magnets = 3" and "materials = 4" with a material construction cost of 1500 metal, 150 silver and 3000 glass.
-Fixed a bug where you cannot place more than one object into a turned-off disposal unit.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4127 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-20 16:08:05 +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
daniel.cf.hultgren@gmail.com 2ce2243223 Disposal update
* You can now Drag-Drop disposal pipes and machinery into the dispenser, in order to remove them.
* You must now use wrench before welding a pipe to the ground
* You can no longer remove a trunk untill the machinery ontop is unwelded and unwrenched
* You are now forced to eject the disposal bin before unwelding it.

Thanks to whoever said the bugs in OOC. (Sorry, unable to remember names)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3734 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-03 15:35:56 +00:00
daniel.cf.hultgren@gmail.com 589267fabf Revolutionary update!
You can now dispense Disposal Bins, Outlets and Chutes from the disposal dispenser. These are movable and you can attach them above open trunks with a wrench, then weld them to attach them completely.
You can remove Bins by turning off their pump, then screwdriver, then weld, then wrench. Same with outlet and chute except for the pump part.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3690 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-28 20:51:15 +00:00
heisen51@gmail.com 10da4a1304 Unsecured disposal pipes are now density=0, so you can walk over them.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2818 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-26 15:44:08 +00:00
petethegoat@gmail.com 9569430cc6 Moving recycling from WorkInProgress to modules, as it isn't wip.
Also, I could -never- find it in there.

(Please note that due to what seems to be an issue with Tortoise SVN, I have to do this in two commits.)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2570 316c924e-a436-60f5-8080-3fe189b3f50e
2011-11-28 20:07:44 +00:00