If you want to have a name like ARMA-420 in game you previously had to
manually set it every round because it wouldn't load properly from SQL
because reject_bad_name doesn't like no numbers.
Changes that.
Allows eyes to track eye-dependent disabilities when removed from the mob.
Farwas and Wolpins are now incurably colourblind (non-genetics based), so going lesser-form and back won't wipe your colourblindness.
Eyes being straight-up deleted (as per how set_species() handles setting up the organs required for the species we're changing to) no longer wipes colourblindness.
Now with more helper procs, less unnecessary commenting, random changes and other cleanliness-related tweaks.
For Vulpkanin and Tajara, it gives them their species-specific
colourblindness but their excellent darksight, too. Otherwise it gives
noir vision.
You can choose this disability at character creation. It is off by
default. You can turn it off via genetics and mutadone.
Fixes Cling Transform&Lesser/Greater form & Darksight bugs
Transforming to an identity will now, with 100% reliability, give you
the exact appearance as that ability bar the body_accessory and the
secondary hair/facial hair colours. Same thing with going from lesser
form to an identity that was not the one you lesser formed with.
Fixes the darksight bug from the last commit, happened 'cause typo.
Woops.
Eye Transplantation Applies Eye-dependent Genes
Transplanting colourblind Vulpkanin/Tajara eyes into a Human gives the Human
the dark_view and unique colourblindness of said Vulpkanin eyes.
Removing colourblind eyes will take the disability with it, meaning the
person will have colour vision/low darksight.
Adds colourblindness for Vulpkanin and Tajara that can be turned on by a
preference in character creation. By default, Vulpkanin and Tajara still
see in full colour, however their darksight is reduced to Human levels
unless they choose the 'unaugmented' eyes option.
Refactors darksight so it's tied to the eye organ. Refactors noir
glasses.
You can now visually distinguish mechanical/mechassisted organs from
their organic counterparts due to their names and icons.
Resolves issue w/ Colour-vision after Cloning/Lesser-to-greater Formswapping.
Cloned Vulpkanin and Tajara get unaugmented vision (colourblind and
darksight) by default since the cloners can't administer the
eye-augmentation surgery. Same goes for swapping from lesser to greater
form as a Changeling.
The monkey-forms of Vulpkanin and Tajara now have almost the same organs as
their greater forms, meaning they get the same colourblindness but
excellent darksight.
- Improves formatting in the "check player playtime" panel, removing the
awkward "bulletpoint -" at the front, making the "?" link work, and
displaying "none" rather than "0h" for people with no playtime.
- Improves formatting when viewing the EXP report for a player, by not
showing the jobs unlocked/locked list when job locking is off (its
pointless in this case: they all count as unlocked)
- Fixes a (currently invisible) typo on preferences screen
Characters will now be correctly assigned their species' genetic quirks at spawn.
Cloning will now correctly assign a characters species' genetic quirks.
Changing a character's species (via C.M.A. or whatever might call the set_species proc) will now correctly assign their species' genetic quirks.
- Fixes a runtime in preferences.dm created by the Patreon PRs,
triggered when an ERT, SIT, or any other clientless mob uses
"var/datum/preferences/A = new()".
- Fixes a bug where, if a SIT is spawned with the 'choose manually'
option, one fewer person than intended is pulled in.
- Fixes syndicate headset not being included in the SIT member's notes.
- Deletes commented code.
- Adds a `donators` table for our patreon supporters.
- Intended to be half-automated, half-manual, in order to correlate
patreon accounts to ckeys. Uses the `active` field so that supporters
don't have to have their ckey associated every time they stop and
restart their donations.
- Current actions:
- Donators at tier 1 or greater get a palm tree next to their name in OOC
(toggleable)
- Donators at tier 1 or greater get +5 loadout points.
- Known issue: Loadout points will not update if the table is
modified during a round where the user has already logged in, due
to preference datum caching. There's not really any good way to fix
this, unfortunately.
Makes the code a lot more consistent to all the other locations it's
implemented as well.
Works the exact same as it did before but with a few less lines of code.
Also sorts out an issue with two facial hair objects having the same name. Woops.
Previously, your markings would only randomize if you clicked the randomize button and were of a species that had body markings. Fixes that and tidies up the proc calls for marking randomization a bit.
Furthermore, a bug existed where if you changed a mob's species via CMA, the mob's cosmetic attributes (hair, hair colour, skin colour, skin tone, marking styles and colours, head accessory style and colour) will not have changed correctly. Delaying appearance update fixed that.
Finally, a mob's body will now correctly render as fat if they become fat and skinny if they become skinny and show deformities immediately.
Further explaining this fix: It required an override to be implemented in update_body that re-cached the mob's bodyparts in order to reflect changes to the limbs (i.e. fatness/slimness).
As for deformation, I just needed to modify the existing update_body() proc call.
Changing your body accessory or alt head will now update the list
entries since the amount of available markings will change depending on
which body accessory/alt head you have.
can_change_alt_head() will now check the head organ's species instead of
the body's species.
can_change_markings() has been updated as per the style of a recent PR
(forgot the number).
Resolves an oversight where the Unathi Tiger Head marking was intended
to be available regardless of what alt head you had but wasn't in
reality.
Resolves an oversight where while the body Tiger markings were darkened, the head/face Tiger markings were forgotten.
Patches the last couple gorey spots I missed.