From f04c7775e09a247c47ceb75ab3f95941b0a34900 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Fri, 16 Nov 2018 17:54:55 -0500 Subject: [PATCH] Adds the ability to choose plural and neuter genders (labelled "non-binary" and "object", respectively) (#7731) * Allows choosing neuter and plural gender options (labelled ingame as "object" and "non-binary" respectively) * tfw the code argues fuckin semantics with you --- code/modules/client/preferences.dm | 18 +++++++++--------- code/modules/client/preferences_savefile.dm | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 481305d62b..d4eed921bd 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -216,7 +216,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "Name: " dat += "[real_name]
" - dat += "Gender: [gender == MALE ? "Male" : "Female"]
" + dat += "Gender: [gender == MALE ? "Male" : (gender == FEMALE ? "Female" : (gender == PLURAL ? "Non-binary" : "Object"))]
" dat += "Age: [age]
" dat += "Special Names:
" @@ -254,7 +254,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) else dat += "[TextPreview(features["flavor_text"])]...
" dat += "

Body

" - dat += "Gender: [gender == MALE ? "Male" : "Female"]
" + dat += "Gender: [gender == MALE ? "Male" : (gender == FEMALE ? "Female" : (gender == PLURAL ? "Non-binary" : "Object"))]
" dat += "Species:[pref_species.id]
" dat += "Random Body
" dat += "Always Random Body: [be_random_body ? "Yes" : "No"]
" @@ -1844,13 +1844,13 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(unlock_content) toggles ^= MEMBER_PUBLIC if("gender") - if(gender == MALE) - gender = FEMALE - else - gender = MALE - underwear = random_underwear(gender) - undershirt = random_undershirt(gender) - socks = random_socks() + var/chosengender = input(user, "Select your character's gender.", "Gender Selection", gender) in list(MALE,FEMALE,"nonbinary","object") + switch(chosengender) + if("nonbinary") + chosengender = PLURAL + if("object") + chosengender = NEUTER + gender = chosengender facial_hair_style = random_facial_hair_style(gender) hair_style = random_hair_style(gender) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 8152f42efb..dbf782c5fe 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -349,7 +349,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //Sanitize real_name = reject_bad_name(real_name) - gender = sanitize_gender(gender) + gender = sanitize_gender(gender, TRUE, TRUE) if(!real_name) real_name = random_unique_name(gender)