mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-11 23:23:55 +01:00
Convert gender and pronoun from bay to TG (#19170)
* Convert gender and pronoun from pay to TG * Remove HERM from biological gender init_possible_values because it won't work * fix runtime error --------- Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com> Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
@@ -3,46 +3,39 @@
|
||||
#define AUTOHISS_FULL 2
|
||||
|
||||
/datum/preferences
|
||||
var/biological_gender = MALE
|
||||
var/identifying_gender = MALE
|
||||
|
||||
var/vore_egg_type = "Egg" //The egg type they have.
|
||||
var/autohiss = "Full" // VOREStation Add: Whether we have Autohiss on. I'm hijacking the egg panel bc this one has a shitton of unused space.
|
||||
|
||||
/datum/preferences/proc/set_biological_gender(var/gender)
|
||||
biological_gender = gender
|
||||
identifying_gender = gender
|
||||
update_preference_by_type(/datum/preference/choiced/gender/biological, gender)
|
||||
update_preference_by_type(/datum/preference/choiced/gender/identifying, gender)
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic
|
||||
name = "Basic"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/load_character(list/save_data)
|
||||
pref.biological_gender = save_data["gender"]
|
||||
pref.identifying_gender = save_data["id_gender"]
|
||||
pref.vore_egg_type = save_data["vore_egg_type"]
|
||||
pref.autohiss = save_data["autohiss"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/save_character(list/save_data)
|
||||
save_data["gender"] = pref.biological_gender
|
||||
save_data["id_gender"] = pref.identifying_gender
|
||||
save_data["vore_egg_type"] = pref.vore_egg_type
|
||||
save_data["autohiss"] = pref.autohiss
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/sanitize_character()
|
||||
pref.biological_gender = sanitize_inlist(pref.biological_gender, get_genders(), pick(get_genders()))
|
||||
pref.identifying_gender = (pref.identifying_gender in all_genders_define_list) ? pref.identifying_gender : pref.biological_gender
|
||||
pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, GLOB.global_vore_egg_types, initial(pref.vore_egg_type))
|
||||
pref.autohiss = sanitize_inlist(pref.autohiss, list("Off", "Basic", "Full"), initial(pref.autohiss))
|
||||
|
||||
// Moved from /datum/preferences/proc/copy_to()
|
||||
/datum/category_item/player_setup_item/general/basic/copy_to_mob(var/mob/living/carbon/human/character)
|
||||
var/char_real_name = pref.read_preference(/datum/preference/name/real_name)
|
||||
var/char_bio_gender = pref.read_preference(/datum/preference/choiced/gender/biological)
|
||||
var/char_id_gender = pref.read_preference(/datum/preference/choiced/gender/identifying)
|
||||
// Re-sanitize name on join.
|
||||
// Fixes being able to swap from FBP to organic before round join to be organic with numbers in name.
|
||||
char_real_name = sanitize_name(char_real_name, pref.species, is_FBP())
|
||||
if(!char_real_name)
|
||||
char_real_name = random_name(pref.identifying_gender, pref.species)
|
||||
char_real_name = random_name(char_id_gender, pref.species)
|
||||
if(CONFIG_GET(flag/humans_need_surnames))
|
||||
var/firstspace = findtext(char_real_name, " ")
|
||||
var/name_length = length(char_real_name)
|
||||
@@ -58,8 +51,8 @@
|
||||
|
||||
character.nickname = pref.read_preference(/datum/preference/name/nickname)
|
||||
|
||||
character.gender = pref.biological_gender
|
||||
character.identifying_gender = pref.identifying_gender
|
||||
character.gender = char_bio_gender
|
||||
character.identifying_gender = char_id_gender
|
||||
|
||||
character.vore_egg_type = pref.vore_egg_type
|
||||
// VOREStation Add
|
||||
@@ -81,8 +74,8 @@
|
||||
data["real_name"] = pref.read_preference(/datum/preference/name/real_name)
|
||||
data["be_random_name"] = pref.read_preference(/datum/preference/toggle/human/name_is_always_random)
|
||||
data["nickname"] = pref.read_preference(/datum/preference/name/nickname)
|
||||
data["biological_sex"] = gender2text(pref.biological_gender)
|
||||
data["identifying_gender"] = gender2text(pref.identifying_gender)
|
||||
data["biological_sex"] = gender2text(pref.read_preference(/datum/preference/choiced/gender/biological))
|
||||
data["identifying_gender"] = gender2text(pref.read_preference(/datum/preference/choiced/gender/identifying))
|
||||
data["age"] = pref.read_preference(/datum/preference/numeric/human/age)
|
||||
data["bday_month"] = pref.read_preference(/datum/preference/numeric/human/bday_month)
|
||||
data["bday_day"] = pref.read_preference(/datum/preference/numeric/human/bday_day)
|
||||
@@ -211,7 +204,7 @@
|
||||
return TOPIC_NOACTION
|
||||
|
||||
if("random_name")
|
||||
pref.update_preference_by_type(/datum/preference/name/real_name, random_name(pref.identifying_gender, pref.species))
|
||||
pref.update_preference_by_type(/datum/preference/name/real_name, random_name(pref.read_preference(/datum/preference/choiced/gender/identifying), pref.species))
|
||||
return TOPIC_REFRESH
|
||||
|
||||
if("always_random_name")
|
||||
@@ -245,7 +238,7 @@
|
||||
if("id_gender")
|
||||
var/new_gender = lowertext(params["gender"])
|
||||
if(new_gender in all_genders_define_list)
|
||||
pref.identifying_gender = new_gender
|
||||
pref.update_preference_by_type(/datum/preference/choiced/gender/identifying, new_gender)
|
||||
return TOPIC_REFRESH
|
||||
|
||||
if("age")
|
||||
|
||||
@@ -196,7 +196,7 @@
|
||||
var/list/wing_styles = pref.get_available_styles(GLOB.wing_styles_list)
|
||||
character.wing_style = wing_styles[pref.wing_style]
|
||||
|
||||
character.set_gender(pref.biological_gender)
|
||||
character.set_gender(pref.read_preference(/datum/preference/choiced/gender/biological))
|
||||
|
||||
character.synthetic = pref.species == "Protean" ? GLOB.all_robolimbs["protean"] : null //Clear the existing var. (unless protean, then switch it to the normal protean limb)
|
||||
var/list/organs_to_edit = list()
|
||||
@@ -271,7 +271,7 @@
|
||||
var/current_name = pref.read_preference(/datum/preference/name/real_name)
|
||||
current_name = sanitize_name(current_name, pref.species)
|
||||
if(!current_name)
|
||||
current_name = random_name(pref.identifying_gender, pref.species)
|
||||
current_name = random_name(pref.read_preference(/datum/preference/choiced/gender/identifying), pref.species)
|
||||
pref.update_preference_by_type(/datum/preference/name/real_name, current_name)
|
||||
|
||||
/datum/category_item/player_setup_item/general/body/tgui_data(mob/user, datum/tgui/ui, datum/tgui_state/state)
|
||||
@@ -756,7 +756,7 @@
|
||||
var/prev_species = pref.species
|
||||
pref.species = params["species"]
|
||||
if(prev_species != pref.species)
|
||||
if(!(pref.biological_gender in mob_species.genders))
|
||||
if(!(pref.read_preference(/datum/preference/choiced/gender/biological) in mob_species.genders))
|
||||
pref.set_biological_gender(mob_species.genders[1])
|
||||
pref.custom_species = null
|
||||
//grab one of the valid hair styles for the newly chosen species
|
||||
|
||||
@@ -67,7 +67,8 @@
|
||||
|
||||
for(var/datum/category_group/underwear/WRC in GLOB.global_underwear.categories)
|
||||
for(var/datum/category_item/underwear/WRI in WRC.items)
|
||||
if(WRI.is_default(pref.identifying_gender ? pref.identifying_gender : MALE))
|
||||
var/id_gender = pref.read_preference(/datum/preference/choiced/gender/identifying)
|
||||
if(WRI.is_default(id_gender ? id_gender : MALE))
|
||||
pref.all_underwear[WRC.name] = WRI.name
|
||||
break
|
||||
|
||||
|
||||
Reference in New Issue
Block a user