Baystation12/Baystation12 — pull request #7510 by Zuhayr (2014-12-23 07:39:21+00:00)
Title: [DNM] Gibber fixes/refacator, mutantrace refactor, couple of small fixes.

Intended changelog:
- The gibber now must be emagged before it will process a human.

Actual changelog:
- The gibber now must be emagged before it will process a human. It has also been refactored to use existing vars where possible instead of snowflakes.
- Knives and cleavers will now behave more sanely. Large animals will gib and small animals will simply del. Both options will spawn half of the result of using the gibber.
- The various gib procs have been collapsed into a single gibs() proc that accepts a type argument.
- Species flag NO_SLIP is now properly taken into account for wet floors, banana peels, etc.
- A refactor of slip code is included in this. /mob/living/proc/slip() is now a thing.
- The dna.mutantrace var has been entirely removed. This may have broken monkey>human genetics, haven't tested that.
- CAN_JOIN and IS_RESTRICTED species flags have been added. CAN_JOIN allows a species to join from the lobby, IS_RESTRICTED prevents a species from showing up in the chargen preview.
- Shadows, golems and slimes are now restricted species definitions.
- Related to this, species var light_dam has been added. Light over this level causes damage, light below this level heals.
- Species files have been broken up and moved into a better directory structure. Documentation has been updated for species vars.
- makeSkeleton() is now ChangeToSkeleton() to go alongside ChangeToHusk().
- Issue: shadows will be gibbable. Slimes and golems are also gibbable but have appropriate colours set.
- All the terrible golem items have been removed.

Testing:
- [ ] Test foam slipping.
- [ ] Test soap.
- [ ] Test banana peels.
- [ ] Test wet and lubed floors.
- [ ] Test slime slipping.
- [ ] Test golem rune.
- [ ] Test slime extract.
- [ ] Test animal gibbing.
- [ ] Test human gibbing.
- [ ] Test robot gibbing.
- [ ] Test kitchen gibber.
- [ ] Test knife/cleaver on simple_animal mobs.
- [ ] Test shadow light damage.
- [ ] Test slime person glomp attack.

Issues:
- I cannot work out why the fuck this is happening, but human and human subspecies mob icons are not showing up when testing locally, even after a clean compile.
- Icons for a golem and an adamantine golem both exist, couldn't work out where golem is used in the code, so now adamantine is the only option.
- Species icons will reproduce the original sprite faithfully, but my chop work was very utilitarian. Someone might want to fancy them up sometime.
- Semale icons for slimes exist but I only converted over the male. Someone else can do that tedious shit. Slimes will also need a better husk overlay.
- Slimes, golems and shadows will suffer from the reagent processing bugs that currently screw with dionaea due to a lack of kidneys and a liver.