Allow hemiplegic users to pick which side is disabled (#81992)

## About The Pull Request

Broadly this code is copied over from the preference code used for
picking prosthetic limbs, with a few changes to make it fit.
It also changes how the quirk displays in the medical records, now
mentioning which side is disabled instead of just half their body.
## Why It's Good For The Game

So of course, first and foremost, I want it personally.
I'm now running a hemiplegic character on Manuel, and I want to able to
pick which side is hemiplegic to match me using heterochromatic eyes to
make it look like they're missing an eye. It's minor, but I think it'd
be nice.

Then, because of that, I think it'd be nice to have for posterity. If I
want it, and I can code it, then the next person who wants it doesn't
have to, y'know?

Lastly, gameplay-wise, it doesn't really matter which side is
hemiplegic, you're permanently missing an arm and a leg either way. So I
feel there's practically no 'powergaming concerns' to be had when it's
this utter shitass to use regardless and the benefits to be gained would
be infinitesimally small in comparison.
## Changelog
🆑
add: Hemiplegic now lets you pick which side is disabled.
add: The medical records text for hemiplegics now shows which side is
disabled.
/🆑
This commit is contained in:
_0Steven
2024-03-19 20:42:02 -06:00
committed by GitHub
parent 7cba5ab0f5
commit bbbeb9b20e
5 changed files with 41 additions and 3 deletions
@@ -0,0 +1,17 @@
/datum/preference/choiced/hemiplegic
category = PREFERENCE_CATEGORY_MANUALLY_RENDERED
savefile_key = "hemiplegic"
savefile_identifier = PREFERENCE_CHARACTER
/datum/preference/choiced/hemiplegic/init_possible_values()
return list("Random") + GLOB.side_choice_hemiplegic
/datum/preference/choiced/hemiplegic/is_accessible(datum/preferences/preferences)
. = ..()
if (!.)
return FALSE
return "Hemiplegic" in preferences.all_quirks
/datum/preference/choiced/hemiplegic/apply_to_human(mob/living/carbon/human/target, value)
return