diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index f2c9cd3315..436c77131d 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -110,6 +110,7 @@ CONFIG_DEF(number/shuttle_refuel_delay) CONFIG_DEF(flag/show_game_type_odds) //if set this allows players to see the odds of each roundtype on the get revision screen +<<<<<<< HEAD CONFIG_DEF(flag/join_with_mutant_race) //players can choose their mutant race before joining the game CONFIG_DEF(keyed_flag_list/roundstart_races) //races you can play as from the get go. If left undefined the game's roundstart var for species is used @@ -133,6 +134,9 @@ CONFIG_DEF(keyed_flag_list/roundstart_races) //races you can play as from the ge value = old_val else first_edit = FALSE +======= +CONFIG_DEF(keyed_flag_list/roundstart_races) //races you can play as from the get go. +>>>>>>> 360fbff... Fixes losing species preferences (#32093) CONFIG_DEF(flag/join_with_mutant_humans) //players can pick mutant bodyparts for humans before joining the game diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 5ed8dcf733..5f9cf3ad9a 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -224,8 +224,7 @@ G.fields["name"] = H.real_name G.fields["rank"] = assignment G.fields["age"] = H.age - if(CONFIG_GET(flag/join_with_mutant_race)) - G.fields["species"] = H.dna.species.name + G.fields["species"] = H.dna.species.name G.fields["fingerprint"] = md5(H.dna.uni_identity) G.fields["p_stat"] = "Active" G.fields["m_stat"] = "Stable" diff --git a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm index 99059e7a25..73a696fb3a 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm @@ -62,7 +62,7 @@ /obj/machinery/abductor/experiment/proc/dissection_icon(mob/living/carbon/human/H) var/icon/photo = null var/g = (H.gender == FEMALE) ? "f" : "m" - if(!CONFIG_GET(flag/join_with_mutant_race) || H.dna.species.use_skintones) + if(H.dna.species.use_skintones) photo = icon("icon" = 'icons/mob/human.dmi', "icon_state" = "[H.skin_tone]_[g]") else photo = icon("icon" = 'icons/mob/human.dmi', "icon_state" = "[H.dna.species.id]_[g]") diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index f13cfe8c00..41b41e536e 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -123,8 +123,7 @@ dat += "ID:[active1.fields["id"]]" dat += "Sex: [active1.fields["sex"]] " dat += "Age: [active1.fields["age"]] " - if(CONFIG_GET(flag/join_with_mutant_race)) - dat += "Species: [active1.fields["species"]] " + dat += "Species: [active1.fields["species"]] " dat += "Fingerprint: [active1.fields["fingerprint"]] " dat += "Physical Status: [active1.fields["p_stat"]] " dat += "Mental Status: [active1.fields["m_stat"]] " @@ -538,8 +537,7 @@ P.info = "
Medical Record - (MR-[GLOB.data_core.medicalPrintCount])

" if(active1 in GLOB.data_core.general) P.info += text("Name: [] ID: []
\nSex: []
\nAge: []
", src.active1.fields["name"], src.active1.fields["id"], src.active1.fields["sex"], src.active1.fields["age"]) - if(CONFIG_GET(flag/join_with_mutant_race)) - P.info += "\nSpecies: [active1.fields["species"]]
" + P.info += "\nSpecies: [active1.fields["species"]]
" P.info += text("\nFingerprint: []
\nPhysical Status: []
\nMental Status: []
", src.active1.fields["fingerprint"], src.active1.fields["p_stat"], src.active1.fields["m_stat"]) else P.info += "General Record Lost!
" diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 8859522ed2..5bb5517dff 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -192,8 +192,7 @@ ID: [active1.fields["id"]]  Sex: [active1.fields["sex"]]  Age: [active1.fields["age"]] "} - if(CONFIG_GET(flag/join_with_mutant_race)) - dat += "Species: [active1.fields["species"]] " + dat += "Species: [active1.fields["species"]] " dat += {"Rank: [active1.fields["rank"]]  Fingerprint: [active1.fields["fingerprint"]]  Physical Status: [active1.fields["p_stat"]]  @@ -367,8 +366,7 @@ What a mess.*/ P.info = "
Security Record - (SR-[GLOB.data_core.securityPrintCount])

" if((istype(active1, /datum/data/record) && GLOB.data_core.general.Find(active1))) P.info += text("Name: [] ID: []
\nSex: []
\nAge: []
", active1.fields["name"], active1.fields["id"], active1.fields["sex"], active1.fields["age"]) - if(CONFIG_GET(flag/join_with_mutant_race)) - P.info += "\nSpecies: [active1.fields["species"]]
" + P.info += "\nSpecies: [active1.fields["species"]]
" P.info += text("\nFingerprint: []
\nPhysical Status: []
\nMental Status: []
", active1.fields["fingerprint"], active1.fields["p_stat"], active1.fields["m_stat"]) else P.info += "General Record Lost!
" @@ -513,8 +511,7 @@ What a mess.*/ G.fields["rank"] = "Unassigned" G.fields["sex"] = "Male" G.fields["age"] = "Unknown" - if(CONFIG_GET(flag/join_with_mutant_race)) - G.fields["species"] = "Human" + G.fields["species"] = "Human" G.fields["photo_front"] = new /icon() G.fields["photo_side"] = new /icon() G.fields["fingerprint"] = "?????" diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 1765ecf902..68e1826719 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -31,7 +31,7 @@ var/drawtype var/text_buffer = "" - var/list/graffiti = list("amyjon","face","matt","revolution","engie","guy","end","dwarf","uboa","body","cyka","arrow","star","poseur tag") + var/list/graffiti = list("amyjon","face","matt","revolution","engie","guy","end","dwarf","uboa","body","cyka","arrow","star","poseur tag","prolizard","antilizard") var/list/letters = list("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z") var/list/numerals = list("0","1","2","3","4","5","6","7","8","9") var/list/oriented = list("arrow","body") // These turn to face the same way as the drawer @@ -78,10 +78,6 @@ if(name == "crayon") name = "[item_color] crayon" - if(CONFIG_GET(flag/join_with_mutant_race)) - graffiti |= "antilizard" - graffiti |= "prolizard" - all_drawables = graffiti + letters + numerals + oriented + runes + graffiti_large_h drawtype = pick(all_drawables) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index f72b1c7f3c..62243067f7 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -285,10 +285,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "" - if(CONFIG_GET(flag/join_with_mutant_race)) //We don't allow mutant bodyparts for humans either unless this is true. - if((MUTCOLORS in pref_species.species_traits) || (MUTCOLORS_PARTSONLY in pref_species.species_traits)) + if((MUTCOLORS in pref_species.species_traits) || (MUTCOLORS_PARTSONLY in pref_species.species_traits)) - dat += "" + dat += "" - if("tail_lizard" in pref_species.mutant_bodyparts) - dat += "" + dat += "" - if("snout" in pref_species.mutant_bodyparts) - dat += "" + dat += "" - if("horns" in pref_species.mutant_bodyparts) - dat += "" + dat += "" - if("frills" in pref_species.mutant_bodyparts) - dat += "" + dat += "" - if("spines" in pref_species.mutant_bodyparts) - dat += "" + dat += "" - if("body_markings" in pref_species.mutant_bodyparts) - dat += "" - if("legs" in pref_species.mutant_bodyparts) - dat += "" + if("legs" in pref_species.mutant_bodyparts) + dat += "" - dat += "" if(CONFIG_GET(flag/join_with_mutant_humans)) if("tail_human" in pref_species.mutant_bodyparts) @@ -1826,10 +1823,12 @@ GLOBAL_LIST_EMPTY(preferences_datums) character.dna.features = features.Copy() //Flavor text is now a DNA feature character.dna.real_name = character.real_name var/datum/species/chosen_species - if(pref_species != /datum/species/human && CONFIG_GET(flag/join_with_mutant_race)) + if(pref_species.id in GLOB.roundstart_races) chosen_species = pref_species.type else chosen_species = /datum/species/human + pref_species = new /datum/species/human + save_character() character.set_species(chosen_species, icon_update=0) //citadel code diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index dddac1e506..2cb59f2c8e 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -294,6 +294,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //Species var/species_id S["species"] >> species_id +<<<<<<< HEAD var/list/roundstart_races = CONFIG_GET(keyed_flag_list/roundstart_races) if(species_id && (species_id in roundstart_races) && CONFIG_GET(flag/join_with_mutant_race)) var/newtype = GLOB.species_list[species_id] @@ -302,6 +303,11 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/rando_race = pick(roundstart_races) if (rando_race) pref_species = new rando_race() +======= + if(species_id) + var/newtype = GLOB.species_list[species_id] + pref_species = new newtype() +>>>>>>> 360fbff... Fixes losing species preferences (#32093) if(!S["features["mcolor"]"] || S["features["mcolor"]"] == "#000") WRITE_FILE(S["features["mcolor"]"] , "#FFF")
" - if(CONFIG_GET(flag/join_with_mutant_race)) - dat += "Species:
[pref_species.name]
" - else - dat += "Species: Human
" + dat += "Species:
[pref_species.name]
" dat += "Underwear:
[underwear]
" dat += "Undershirt:
[undershirt]
" @@ -337,79 +334,79 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "
" + dat += "" - dat += "

Mutant Color

" + dat += "

Mutant Color

" - dat += "    Change
" + dat += "    Change
" - dat += "
" + if("tail_lizard" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Tail

" + dat += "

Tail

" - dat += "[features["tail_lizard"]]
" + dat += "[features["tail_lizard"]]
" - dat += "
" + if("snout" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Snout

" + dat += "

Snout

" - dat += "[features["snout"]]
" + dat += "[features["snout"]]
" - dat += "
" + if("horns" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Horns

" + dat += "

Horns

" - dat += "[features["horns"]]
" + dat += "[features["horns"]]
" - dat += "
" + if("frills" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Frills

" + dat += "

Frills

" - dat += "[features["frills"]]
" + dat += "[features["frills"]]
" - dat += "
" + if("spines" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Spines

" + dat += "

Spines

" - dat += "[features["spines"]]
" + dat += "[features["spines"]]
" - dat += "
" + if("body_markings" in pref_species.mutant_bodyparts) + dat += "" - dat += "

Body Markings

" + dat += "

Body Markings

" - dat += "[features["body_markings"]]
" + dat += "[features["body_markings"]]
" - dat += "
" + dat += "" - dat += "

Legs

" + dat += "

Legs

" - dat += "[features["legs"]]
" + dat += "[features["legs"]]
" + + dat += "