tgstation/-tg-station — pull request #4098 by Kelenius (2014-07-07 20:34:04+00:00)
Title: Mutations refactoring

Aka Of Powers And Standards.

Makes mutations and disabilities a single datum. It has three lists: mutations (TK, hulk, CR, xray, laser eyes and healing hands), conditions (HUSK, NOCLONE and FAT) and disabilities (everything else).

It keeps all messages and special mutation handles (xray needs to set your vision) in one place. You can force a different message, or make it now show any message with proc arguments.

You will now always see what changed when you receive new DNA, e.g. if you had coughing and got it removed, you will get a message that it was removed. Similarly, if you had x-ray and didn't lose it, you will not receive a message again.

Comments out a bunch of unused mutation defines.

Fixes a couple of potential bugs where it was possible to try to remove a mutation that wasn't there. See deafness disease symptom for an example.

Fixes a random bug where alien larvae were unable to unfat. Hahahah fat larvae.