tgstation/-tg-station — pull request #6335 by RemieRichards (2014-12-13 02:45:13+00:00)
Title: Spess station massacre (Dismemberment)

* Adds Dismemberment. (Port of my NT dismemberment + Core code rewrite, yes I'm insane to rewrite this every single time)
* Humans are now made of overlays (They maintain an icon_state at round start due to getFlatIcon calls)
* There is now a limb_icon_cache so that humans don't need to always redraw all their limb overlays
* Humans no longer have a base_icon_state var
* A bunch of human icon indices are now in the DEFINES (as with @Razharas mutation PR, we're going to conflict but it's necessary)

Remaining issues/TODO:
- [ ] Newer species icons weirdness
- [ ] Admin heal proc does not regenerate limbs yet
- [ ] Changeling limb cool stuff
- [ ] Move SHARP flags to appropriate weapons
- [ ] Gun dismemberment (Physical bullets only)
- [ ] Explosion dismemberment
- [ ] Rework human gib() to just dismember a bunch of limbs
- [ ] Make drop_limb() not racist (Difficult, but I'll try)
- [ ] General polishing
- [ ] Add the NTstation deusexmachina admin verb which allows you to change limb status (Organic, Robotic)

TESTING:
Just spawn a book at set it to 100 force, I suggest book as I know it's flags don't get changed so it inherits the temporary SHARP flag.
If a weapon does not dismember, it either has too low damage or has it's own flag defines.
Other than this, feel free to test/play with it