[MIRROR] de-reference save_data lists (#9067)

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: Kashargul <KashL@t-online.de>
This commit is contained in:
CHOMPStation2
2024-09-27 20:05:23 -07:00
committed by GitHub
parent 9e524184c1
commit f37f844f5a
10 changed files with 80 additions and 33 deletions

View File

@@ -8,19 +8,19 @@
var/static/list/forbidden_prefixes = list(";", ":", ".", "!", "*", "^", "-")
/datum/category_item/player_setup_item/general/language/load_character(list/save_data)
pref.alternate_languages = save_data["language"]
pref.alternate_languages = check_list_copy(save_data["language"])
pref.extra_languages = save_data["extra_languages"]
pref.language_prefixes = save_data["language_prefixes"]
pref.species = save_data["species"] //CHOMPAdd
pref.species = save_data["species"]
pref.preferred_language = save_data["preflang"]
pref.language_custom_keys = save_data["language_custom_keys"]
pref.language_custom_keys = check_list_copy(save_data["language_custom_keys"])
/datum/category_item/player_setup_item/general/language/save_character(list/save_data)
save_data["language"] = pref.alternate_languages
save_data["language"] = check_list_copy(pref.alternate_languages)
save_data["extra_languages"] = pref.extra_languages
save_data["language_prefixes"] = pref.language_prefixes
save_data["language_custom_keys"] = pref.language_custom_keys
save_data["preflang"] = pref.preferred_language
save_data["preflang"] = check_list_copy(pref.preferred_language)
/datum/category_item/player_setup_item/general/language/sanitize_character()
if(!islist(pref.alternate_languages)) pref.alternate_languages = list()

View File

@@ -113,16 +113,20 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
pref.b_eyes = save_data["eyes_blue"]
pref.b_type = save_data["b_type"]
pref.disabilities = save_data["disabilities"]
pref.organ_data = save_data["organ_data"]
pref.rlimb_data = save_data["rlimb_data"]
pref.body_markings = save_data["body_markings"]
pref.organ_data = check_list_copy(save_data["organ_data"])
pref.rlimb_data = check_list_copy(save_data["rlimb_data"])
pref.body_markings = check_list_copy(save_data["body_markings"])
for(var/i in pref.body_markings)
pref.body_markings[i] = check_list_copy(pref.body_markings[i])
for(var/j in pref.body_markings[i])
pref.body_markings[i][j] = check_list_copy(pref.body_markings[i][j])
pref.synth_color = save_data["synth_color"]
pref.r_synth = save_data["synth_red"]
pref.g_synth = save_data["synth_green"]
pref.b_synth = save_data["synth_blue"]
pref.synth_markings = save_data["synth_markings"]
pref.bgstate = save_data["bgstate"]
pref.body_descriptors = save_data["body_descriptors"]
pref.body_descriptors = check_list_copy(save_data["body_descriptors"])
//YWadd start
pref.wingdings = save_data["Wingdings"]
pref.colorblind_mono = save_data["colorblind_mono"]
@@ -185,16 +189,21 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
save_data["eyes_blue"] = pref.b_eyes
save_data["b_type"] = pref.b_type
save_data["disabilities"] = pref.disabilities
save_data["organ_data"] = pref.organ_data
save_data["rlimb_data"] = pref.rlimb_data
save_data["body_markings"] = pref.body_markings
save_data["organ_data"] = check_list_copy(pref.organ_data)
save_data["rlimb_data"] = check_list_copy(pref.rlimb_data)
var/list/body_markings = check_list_copy(pref.body_markings)
for(var/i in pref.body_markings)
body_markings[i] = check_list_copy(body_markings[i])
for(var/j in body_markings[i])
body_markings[i][j] = check_list_copy(body_markings[i][j])
save_data["body_markings"] = body_markings
save_data["synth_color"] = pref.synth_color
save_data["synth_red"] = pref.r_synth
save_data["synth_green"] = pref.g_synth
save_data["synth_blue"] = pref.b_synth
save_data["synth_markings"] = pref.synth_markings
save_data["bgstate"] = pref.bgstate
save_data["body_descriptors"] = pref.body_descriptors
save_data["body_descriptors"] = check_list_copy(pref.body_descriptors)
//YWadd start
save_data["Wingdings"] = pref.wingdings
save_data["colorblind_mono"] = pref.colorblind_mono

View File

@@ -7,8 +7,10 @@
sort_order = 4
/datum/category_item/player_setup_item/general/equipment/load_character(list/save_data)
pref.all_underwear = save_data["all_underwear"]
pref.all_underwear_metadata = save_data["all_underwear_metadata"]
pref.all_underwear = check_list_copy(save_data["all_underwear"])
pref.all_underwear_metadata = check_list_copy(save_data["all_underwear_metadata"])
for(var/i in pref.all_underwear_metadata)
pref.all_underwear_metadata[i] = path2text_list(pref.all_underwear_metadata[i])
pref.backbag = save_data["backbag"]
pref.pdachoice = save_data["pdachoice"]
pref.communicator_visibility = save_data["communicator_visibility"]
@@ -17,7 +19,10 @@
/datum/category_item/player_setup_item/general/equipment/save_character(list/save_data)
save_data["all_underwear"] = pref.all_underwear
save_data["all_underwear_metadata"] = pref.all_underwear_metadata
var/list/underwear = list()
for(var/i in pref.all_underwear_metadata)
underwear[i] = check_list_copy(pref.all_underwear_metadata[i])
save_data["all_underwear_metadata"] = underwear
save_data["backbag"] = pref.backbag
save_data["pdachoice"] = pref.pdachoice
save_data["communicator_visibility"] = pref.communicator_visibility