mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-12 23:54:24 +01:00
Revert "Merge pull request #16240 from ShadowLarkens/revert"
This reverts commit885171f985, reversing changes made to3e314f8064.
This commit is contained in:
@@ -4,17 +4,17 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None")
|
||||
name = "Basic"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/basic/load_character(var/savefile/S)
|
||||
S["uplinklocation"] >> pref.uplinklocation
|
||||
S["exploit_record"] >> pref.exploit_record
|
||||
S["antag_faction"] >> pref.antag_faction
|
||||
S["antag_vis"] >> pref.antag_vis
|
||||
/datum/category_item/player_setup_item/antagonism/basic/load_character(list/save_data)
|
||||
pref.uplinklocation = save_data["uplinklocation"]
|
||||
pref.exploit_record = save_data["exploit_record"]
|
||||
pref.antag_faction = save_data["antag_faction"]
|
||||
pref.antag_vis = save_data["antag_vis"]
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/basic/save_character(var/savefile/S)
|
||||
S["uplinklocation"] << pref.uplinklocation
|
||||
S["exploit_record"] << pref.exploit_record
|
||||
S["antag_faction"] << pref.antag_faction
|
||||
S["antag_vis"] << pref.antag_vis
|
||||
/datum/category_item/player_setup_item/antagonism/basic/save_character(list/save_data)
|
||||
save_data["uplinklocation"] = pref.uplinklocation
|
||||
save_data["exploit_record"] = pref.exploit_record
|
||||
save_data["antag_faction"] = pref.antag_faction
|
||||
save_data["antag_vis"] = pref.antag_vis
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/basic/sanitize_character()
|
||||
pref.uplinklocation = sanitize_inlist(pref.uplinklocation, uplink_locations, initial(pref.uplinklocation))
|
||||
|
||||
@@ -31,11 +31,11 @@ var/global/list/special_roles = list( //keep synced with the defines BE_* in set
|
||||
name = "Candidacy"
|
||||
sort_order = 2
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/candidacy/load_character(var/savefile/S)
|
||||
S["be_special"] >> pref.be_special
|
||||
/datum/category_item/player_setup_item/antagonism/candidacy/load_character(list/save_data)
|
||||
pref.be_special = save_data["be_special"]
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/candidacy/save_character(var/savefile/S)
|
||||
S["be_special"] << pref.be_special
|
||||
/datum/category_item/player_setup_item/antagonism/candidacy/save_character(list/save_data)
|
||||
save_data["be_special"] = pref.be_special
|
||||
|
||||
/datum/category_item/player_setup_item/antagonism/candidacy/sanitize_character()
|
||||
pref.be_special = sanitize_integer(pref.be_special, 0, 16777215, initial(pref.be_special)) //VOREStation Edit - 24 bits of support
|
||||
|
||||
@@ -10,37 +10,37 @@
|
||||
name = "Basic"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/load_character(var/savefile/S)
|
||||
S["real_name"] >> pref.real_name
|
||||
S["nickname"] >> pref.nickname
|
||||
S["name_is_always_random"] >> pref.be_random_name
|
||||
S["gender"] >> pref.biological_gender
|
||||
S["id_gender"] >> pref.identifying_gender
|
||||
S["age"] >> pref.age
|
||||
S["bday_month"] >> pref.bday_month
|
||||
S["bday_day"] >> pref.bday_day
|
||||
S["last_bday_note"] >> pref.last_birthday_notification
|
||||
S["bday_announce"] >> pref.bday_announce
|
||||
S["spawnpoint"] >> pref.spawnpoint
|
||||
S["OOC_Notes"] >> pref.metadata
|
||||
S["OOC_Notes_Likes"] >> pref.metadata_likes
|
||||
S["OOC_Notes_Disikes"] >> pref.metadata_dislikes
|
||||
/datum/category_item/player_setup_item/general/basic/load_character(list/save_data)
|
||||
pref.real_name = save_data["real_name"]
|
||||
pref.nickname = save_data["nickname"]
|
||||
pref.be_random_name = save_data["name_is_always_random"]
|
||||
pref.biological_gender = save_data["gender"]
|
||||
pref.identifying_gender = save_data["id_gender"]
|
||||
pref.age = save_data["age"]
|
||||
pref.bday_month = save_data["bday_month"]
|
||||
pref.bday_day = save_data["bday_day"]
|
||||
pref.last_birthday_notification = save_data["last_bday_note"]
|
||||
pref.bday_announce = save_data["bday_announce"]
|
||||
pref.spawnpoint = save_data["spawnpoint"]
|
||||
pref.metadata = save_data["OOC_Notes"]
|
||||
pref.metadata_likes = save_data["OOC_Notes_Likes"]
|
||||
pref.metadata_dislikes = save_data["OOC_Notes_Disikes"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/save_character(var/savefile/S)
|
||||
S["real_name"] << pref.real_name
|
||||
S["nickname"] << pref.nickname
|
||||
S["name_is_always_random"] << pref.be_random_name
|
||||
S["gender"] << pref.biological_gender
|
||||
S["id_gender"] << pref.identifying_gender
|
||||
S["age"] << pref.age
|
||||
S["bday_month"] << pref.bday_month
|
||||
S["bday_day"] << pref.bday_day
|
||||
S["last_bday_note"] << pref.last_birthday_notification
|
||||
S["bday_announce"] << pref.bday_announce
|
||||
S["spawnpoint"] << pref.spawnpoint
|
||||
S["OOC_Notes"] << pref.metadata
|
||||
S["OOC_Notes_Likes"] << pref.metadata_likes
|
||||
S["OOC_Notes_Disikes"] << pref.metadata_dislikes
|
||||
/datum/category_item/player_setup_item/general/basic/save_character(list/save_data)
|
||||
save_data["real_name"] = pref.real_name
|
||||
save_data["nickname"] = pref.nickname
|
||||
save_data["name_is_always_random"] = pref.be_random_name
|
||||
save_data["gender"] = pref.biological_gender
|
||||
save_data["id_gender"] = pref.identifying_gender
|
||||
save_data["age"] = pref.age
|
||||
save_data["bday_month"] = pref.bday_month
|
||||
save_data["bday_day"] = pref.bday_day
|
||||
save_data["last_bday_note"] = pref.last_birthday_notification
|
||||
save_data["bday_announce"] = pref.bday_announce
|
||||
save_data["spawnpoint"] = pref.spawnpoint
|
||||
save_data["OOC_Notes"] = pref.metadata
|
||||
save_data["OOC_Notes_Likes"] = pref.metadata_likes
|
||||
save_data["OOC_Notes_Disikes"] = pref.metadata_dislikes
|
||||
|
||||
/datum/category_item/player_setup_item/general/basic/sanitize_character()
|
||||
pref.age = sanitize_integer(pref.age, get_min_age(), get_max_age(), initial(pref.age))
|
||||
|
||||
@@ -7,25 +7,19 @@
|
||||
sort_order = 2
|
||||
var/static/list/forbidden_prefixes = list(";", ":", ".", "!", "*", "^", "-")
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/load_character(var/savefile/S)
|
||||
S["language"] >> pref.alternate_languages
|
||||
S["extra_languages"] >> pref.extra_languages
|
||||
if(islist(pref.alternate_languages)) // Because aparently it may not be?
|
||||
testing("LANGSANI: Loaded from [pref.client]'s character [pref.real_name || "-name not yet loaded-"] savefile: [english_list(pref.alternate_languages || list())]")
|
||||
S["language_prefixes"] >> pref.language_prefixes
|
||||
//VORE Edit Begin
|
||||
S["preflang"] >> pref.preferred_language
|
||||
//VORE Edit End
|
||||
S["language_custom_keys"] >> pref.language_custom_keys
|
||||
/datum/category_item/player_setup_item/general/language/load_character(list/save_data)
|
||||
pref.alternate_languages = save_data["language"]
|
||||
pref.extra_languages = save_data["extra_languages"]
|
||||
pref.language_prefixes = save_data["language_prefixes"]
|
||||
pref.preferred_language = save_data["preflang"]
|
||||
pref.language_custom_keys = save_data["language_custom_keys"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/save_character(var/savefile/S)
|
||||
S["language"] << pref.alternate_languages
|
||||
S["extra_languages"] << pref.extra_languages
|
||||
if(islist(pref.alternate_languages)) // Because aparently it may not be?
|
||||
testing("LANGSANI: Loaded from [pref.client]'s character [pref.real_name || "-name not yet loaded-"] savefile: [english_list(pref.alternate_languages || list())]")
|
||||
S["language_prefixes"] << pref.language_prefixes
|
||||
S["language_custom_keys"] << pref.language_custom_keys
|
||||
S["preflang"] << pref.preferred_language // VOREStation Edit
|
||||
/datum/category_item/player_setup_item/general/language/save_character(list/save_data)
|
||||
save_data["language"] = 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
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/sanitize_character()
|
||||
if(!islist(pref.alternate_languages))
|
||||
|
||||
@@ -90,135 +90,135 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
|
||||
name = "Body"
|
||||
sort_order = 3
|
||||
|
||||
/datum/category_item/player_setup_item/general/body/load_character(var/savefile/S)
|
||||
S["species"] >> pref.species
|
||||
S["hair_red"] >> pref.r_hair
|
||||
S["hair_green"] >> pref.g_hair
|
||||
S["hair_blue"] >> pref.b_hair
|
||||
S["facial_red"] >> pref.r_facial
|
||||
S["grad_red"] >> pref.r_grad
|
||||
S["grad_green"] >> pref.g_grad
|
||||
S["grad_blue"] >> pref.b_grad
|
||||
S["facial_green"] >> pref.g_facial
|
||||
S["facial_blue"] >> pref.b_facial
|
||||
S["skin_tone"] >> pref.s_tone
|
||||
S["skin_red"] >> pref.r_skin
|
||||
S["skin_green"] >> pref.g_skin
|
||||
S["skin_blue"] >> pref.b_skin
|
||||
S["hair_style_name"] >> pref.h_style
|
||||
S["facial_style_name"] >> pref.f_style
|
||||
S["grad_style_name"] >> pref.grad_style
|
||||
S["eyes_red"] >> pref.r_eyes
|
||||
S["eyes_green"] >> pref.g_eyes
|
||||
S["eyes_blue"] >> pref.b_eyes
|
||||
S["b_type"] >> pref.b_type
|
||||
S["disabilities"] >> pref.disabilities
|
||||
S["organ_data"] >> pref.organ_data
|
||||
S["rlimb_data"] >> pref.rlimb_data
|
||||
S["body_markings"] >> pref.body_markings
|
||||
S["synth_color"] >> pref.synth_color
|
||||
S["synth_red"] >> pref.r_synth
|
||||
S["synth_green"] >> pref.g_synth
|
||||
S["synth_blue"] >> pref.b_synth
|
||||
S["synth_markings"] >> pref.synth_markings
|
||||
S["bgstate"] >> pref.bgstate
|
||||
S["body_descriptors"] >> pref.body_descriptors
|
||||
S["ear_style"] >> pref.ear_style
|
||||
S["r_ears"] >> pref.r_ears
|
||||
S["g_ears"] >> pref.g_ears
|
||||
S["b_ears"] >> pref.b_ears
|
||||
S["r_ears2"] >> pref.r_ears2
|
||||
S["g_ears2"] >> pref.g_ears2
|
||||
S["b_ears2"] >> pref.b_ears2
|
||||
S["r_ears3"] >> pref.r_ears3
|
||||
S["g_ears3"] >> pref.g_ears3
|
||||
S["b_ears3"] >> pref.b_ears3
|
||||
S["tail_style"] >> pref.tail_style
|
||||
S["r_tail"] >> pref.r_tail
|
||||
S["g_tail"] >> pref.g_tail
|
||||
S["b_tail"] >> pref.b_tail
|
||||
S["r_tail2"] >> pref.r_tail2
|
||||
S["g_tail2"] >> pref.g_tail2
|
||||
S["b_tail2"] >> pref.b_tail2
|
||||
S["r_tail3"] >> pref.r_tail3
|
||||
S["g_tail3"] >> pref.g_tail3
|
||||
S["b_tail3"] >> pref.b_tail3
|
||||
S["wing_style"] >> pref.wing_style
|
||||
S["r_wing"] >> pref.r_wing
|
||||
S["g_wing"] >> pref.g_wing
|
||||
S["b_wing"] >> pref.b_wing
|
||||
S["r_wing2"] >> pref.r_wing2
|
||||
S["g_wing2"] >> pref.g_wing2
|
||||
S["b_wing2"] >> pref.b_wing2
|
||||
S["r_wing3"] >> pref.r_wing3
|
||||
S["g_wing3"] >> pref.g_wing3
|
||||
S["b_wing3"] >> pref.b_wing3
|
||||
S["digitigrade"] >> pref.digitigrade
|
||||
/datum/category_item/player_setup_item/general/body/load_character(list/save_data)
|
||||
pref.species = save_data["species"]
|
||||
pref.r_hair = save_data["hair_red"]
|
||||
pref.g_hair = save_data["hair_green"]
|
||||
pref.b_hair = save_data["hair_blue"]
|
||||
pref.r_facial = save_data["facial_red"]
|
||||
pref.r_grad = save_data["grad_red"]
|
||||
pref.g_grad = save_data["grad_green"]
|
||||
pref.b_grad = save_data["grad_blue"]
|
||||
pref.g_facial = save_data["facial_green"]
|
||||
pref.b_facial = save_data["facial_blue"]
|
||||
pref.s_tone = save_data["skin_tone"]
|
||||
pref.r_skin = save_data["skin_red"]
|
||||
pref.g_skin = save_data["skin_green"]
|
||||
pref.b_skin = save_data["skin_blue"]
|
||||
pref.h_style = save_data["hair_style_name"]
|
||||
pref.f_style = save_data["facial_style_name"]
|
||||
pref.grad_style = save_data["grad_style_name"]
|
||||
pref.r_eyes = save_data["eyes_red"]
|
||||
pref.g_eyes = save_data["eyes_green"]
|
||||
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.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.ear_style = save_data["ear_style"]
|
||||
pref.r_ears = save_data["r_ears"]
|
||||
pref.g_ears = save_data["g_ears"]
|
||||
pref.b_ears = save_data["b_ears"]
|
||||
pref.r_ears2 = save_data["r_ears2"]
|
||||
pref.g_ears2 = save_data["g_ears2"]
|
||||
pref.b_ears2 = save_data["b_ears2"]
|
||||
pref.r_ears3 = save_data["r_ears3"]
|
||||
pref.g_ears3 = save_data["g_ears3"]
|
||||
pref.b_ears3 = save_data["b_ears3"]
|
||||
pref.tail_style = save_data["tail_style"]
|
||||
pref.r_tail = save_data["r_tail"]
|
||||
pref.g_tail = save_data["g_tail"]
|
||||
pref.b_tail = save_data["b_tail"]
|
||||
pref.r_tail2 = save_data["r_tail2"]
|
||||
pref.g_tail2 = save_data["g_tail2"]
|
||||
pref.b_tail2 = save_data["b_tail2"]
|
||||
pref.r_tail3 = save_data["r_tail3"]
|
||||
pref.g_tail3 = save_data["g_tail3"]
|
||||
pref.b_tail3 = save_data["b_tail3"]
|
||||
pref.wing_style = save_data["wing_style"]
|
||||
pref.r_wing = save_data["r_wing"]
|
||||
pref.g_wing = save_data["g_wing"]
|
||||
pref.b_wing = save_data["b_wing"]
|
||||
pref.r_wing2 = save_data["r_wing2"]
|
||||
pref.g_wing2 = save_data["g_wing2"]
|
||||
pref.b_wing2 = save_data["b_wing2"]
|
||||
pref.r_wing3 = save_data["r_wing3"]
|
||||
pref.g_wing3 = save_data["g_wing3"]
|
||||
pref.b_wing3 = save_data["b_wing3"]
|
||||
pref.digitigrade = save_data["digitigrade"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/body/save_character(var/savefile/S)
|
||||
S["species"] << pref.species
|
||||
S["hair_red"] << pref.r_hair
|
||||
S["hair_green"] << pref.g_hair
|
||||
S["hair_blue"] << pref.b_hair
|
||||
S["grad_red"] << pref.r_grad
|
||||
S["grad_green"] << pref.g_grad
|
||||
S["grad_blue"] << pref.b_grad
|
||||
S["facial_red"] << pref.r_facial
|
||||
S["facial_green"] << pref.g_facial
|
||||
S["facial_blue"] << pref.b_facial
|
||||
S["skin_tone"] << pref.s_tone
|
||||
S["skin_red"] << pref.r_skin
|
||||
S["skin_green"] << pref.g_skin
|
||||
S["skin_blue"] << pref.b_skin
|
||||
S["hair_style_name"] << pref.h_style
|
||||
S["facial_style_name"] << pref.f_style
|
||||
S["grad_style_name"] << pref.grad_style
|
||||
S["eyes_red"] << pref.r_eyes
|
||||
S["eyes_green"] << pref.g_eyes
|
||||
S["eyes_blue"] << pref.b_eyes
|
||||
S["b_type"] << pref.b_type
|
||||
S["disabilities"] << pref.disabilities
|
||||
S["organ_data"] << pref.organ_data
|
||||
S["rlimb_data"] << pref.rlimb_data
|
||||
S["body_markings"] << pref.body_markings
|
||||
S["synth_color"] << pref.synth_color
|
||||
S["synth_red"] << pref.r_synth
|
||||
S["synth_green"] << pref.g_synth
|
||||
S["synth_blue"] << pref.b_synth
|
||||
S["synth_markings"] << pref.synth_markings
|
||||
S["bgstate"] << pref.bgstate
|
||||
S["body_descriptors"] << pref.body_descriptors
|
||||
S["ear_style"] << pref.ear_style
|
||||
S["r_ears"] << pref.r_ears
|
||||
S["g_ears"] << pref.g_ears
|
||||
S["b_ears"] << pref.b_ears
|
||||
S["r_ears2"] << pref.r_ears2
|
||||
S["g_ears2"] << pref.g_ears2
|
||||
S["b_ears2"] << pref.b_ears2
|
||||
S["r_ears3"] << pref.r_ears3
|
||||
S["g_ears3"] << pref.g_ears3
|
||||
S["b_ears3"] << pref.b_ears3
|
||||
S["tail_style"] << pref.tail_style
|
||||
S["r_tail"] << pref.r_tail
|
||||
S["g_tail"] << pref.g_tail
|
||||
S["b_tail"] << pref.b_tail
|
||||
S["r_tail2"] << pref.r_tail2
|
||||
S["g_tail2"] << pref.g_tail2
|
||||
S["b_tail2"] << pref.b_tail2
|
||||
S["r_tail3"] << pref.r_tail3
|
||||
S["g_tail3"] << pref.g_tail3
|
||||
S["b_tail3"] << pref.b_tail3
|
||||
S["wing_style"] << pref.wing_style
|
||||
S["r_wing"] << pref.r_wing
|
||||
S["g_wing"] << pref.g_wing
|
||||
S["b_wing"] << pref.b_wing
|
||||
S["r_wing2"] << pref.r_wing2
|
||||
S["g_wing2"] << pref.g_wing2
|
||||
S["b_wing2"] << pref.b_wing2
|
||||
S["r_wing3"] << pref.r_wing3
|
||||
S["g_wing3"] << pref.g_wing3
|
||||
S["b_wing3"] << pref.b_wing3
|
||||
S["digitigrade"] << pref.digitigrade
|
||||
/datum/category_item/player_setup_item/general/body/save_character(list/save_data)
|
||||
save_data["species"] = pref.species
|
||||
save_data["hair_red"] = pref.r_hair
|
||||
save_data["hair_green"] = pref.g_hair
|
||||
save_data["hair_blue"] = pref.b_hair
|
||||
save_data["grad_red"] = pref.r_grad
|
||||
save_data["grad_green"] = pref.g_grad
|
||||
save_data["grad_blue"] = pref.b_grad
|
||||
save_data["facial_red"] = pref.r_facial
|
||||
save_data["facial_green"] = pref.g_facial
|
||||
save_data["facial_blue"] = pref.b_facial
|
||||
save_data["skin_tone"] = pref.s_tone
|
||||
save_data["skin_red"] = pref.r_skin
|
||||
save_data["skin_green"] = pref.g_skin
|
||||
save_data["skin_blue"] = pref.b_skin
|
||||
save_data["hair_style_name"] = pref.h_style
|
||||
save_data["facial_style_name"] = pref.f_style
|
||||
save_data["grad_style_name"] = pref.grad_style
|
||||
save_data["eyes_red"] = pref.r_eyes
|
||||
save_data["eyes_green"] = pref.g_eyes
|
||||
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["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["ear_style"] = pref.ear_style
|
||||
save_data["r_ears"] = pref.r_ears
|
||||
save_data["g_ears"] = pref.g_ears
|
||||
save_data["b_ears"] = pref.b_ears
|
||||
save_data["r_ears2"] = pref.r_ears2
|
||||
save_data["g_ears2"] = pref.g_ears2
|
||||
save_data["b_ears2"] = pref.b_ears2
|
||||
save_data["r_ears3"] = pref.r_ears3
|
||||
save_data["g_ears3"] = pref.g_ears3
|
||||
save_data["b_ears3"] = pref.b_ears3
|
||||
save_data["tail_style"] = pref.tail_style
|
||||
save_data["r_tail"] = pref.r_tail
|
||||
save_data["g_tail"] = pref.g_tail
|
||||
save_data["b_tail"] = pref.b_tail
|
||||
save_data["r_tail2"] = pref.r_tail2
|
||||
save_data["g_tail2"] = pref.g_tail2
|
||||
save_data["b_tail2"] = pref.b_tail2
|
||||
save_data["r_tail3"] = pref.r_tail3
|
||||
save_data["g_tail3"] = pref.g_tail3
|
||||
save_data["b_tail3"] = pref.b_tail3
|
||||
save_data["wing_style"] = pref.wing_style
|
||||
save_data["r_wing"] = pref.r_wing
|
||||
save_data["g_wing"] = pref.g_wing
|
||||
save_data["b_wing"] = pref.b_wing
|
||||
save_data["r_wing2"] = pref.r_wing2
|
||||
save_data["g_wing2"] = pref.g_wing2
|
||||
save_data["b_wing2"] = pref.b_wing2
|
||||
save_data["r_wing3"] = pref.r_wing3
|
||||
save_data["g_wing3"] = pref.g_wing3
|
||||
save_data["b_wing3"] = pref.b_wing3
|
||||
save_data["digitigrade"] = pref.digitigrade
|
||||
|
||||
/datum/category_item/player_setup_item/general/body/sanitize_character(var/savefile/S)
|
||||
if(!pref.species || !(pref.species in GLOB.playable_species))
|
||||
|
||||
@@ -6,23 +6,23 @@
|
||||
name = "Clothing"
|
||||
sort_order = 4
|
||||
|
||||
/datum/category_item/player_setup_item/general/equipment/load_character(var/savefile/S)
|
||||
S["all_underwear"] >> pref.all_underwear
|
||||
S["all_underwear_metadata"] >> pref.all_underwear_metadata
|
||||
S["backbag"] >> pref.backbag
|
||||
S["pdachoice"] >> pref.pdachoice
|
||||
S["communicator_visibility"] >> pref.communicator_visibility
|
||||
S["ringtone"] >> pref.ringtone
|
||||
S["shoe_hater"] >> pref.shoe_hater //RS ADD
|
||||
/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.backbag = save_data["backbag"]
|
||||
pref.pdachoice = save_data["pdachoice"]
|
||||
pref.communicator_visibility = save_data["communicator_visibility"]
|
||||
pref.ringtone = save_data["ringtone"]
|
||||
pref.shoe_hater = save_data["shoe_hater"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/equipment/save_character(var/savefile/S)
|
||||
S["all_underwear"] << pref.all_underwear
|
||||
S["all_underwear_metadata"] << pref.all_underwear_metadata
|
||||
S["backbag"] << pref.backbag
|
||||
S["pdachoice"] << pref.pdachoice
|
||||
S["communicator_visibility"] << pref.communicator_visibility
|
||||
S["ringtone"] << pref.ringtone
|
||||
S["shoe_hater"] << pref.shoe_hater //RS ADD
|
||||
/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
|
||||
save_data["backbag"] = pref.backbag
|
||||
save_data["pdachoice"] = pref.pdachoice
|
||||
save_data["communicator_visibility"] = pref.communicator_visibility
|
||||
save_data["ringtone"] = pref.ringtone
|
||||
save_data["shoe_hater"] = pref.shoe_hater
|
||||
|
||||
var/global/list/valid_ringtones = list(
|
||||
"beep",
|
||||
|
||||
@@ -1,28 +1,27 @@
|
||||
/datum/category_item/player_setup_item/general/background
|
||||
name = "Background"
|
||||
sort_order = 5
|
||||
/datum/category_item/player_setup_item/general/background/load_character(list/save_data)
|
||||
pref.med_record = save_data["med_record"]
|
||||
pref.sec_record = save_data["sec_record"]
|
||||
pref.gen_record = save_data["gen_record"]
|
||||
pref.home_system = save_data["home_system"]
|
||||
pref.birthplace = save_data["birthplace"]
|
||||
pref.citizenship = save_data["citizenship"]
|
||||
pref.faction = save_data["faction"]
|
||||
pref.religion = save_data["religion"]
|
||||
pref.economic_status = save_data["economic_status"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/background/load_character(var/savefile/S)
|
||||
S["med_record"] >> pref.med_record
|
||||
S["sec_record"] >> pref.sec_record
|
||||
S["gen_record"] >> pref.gen_record
|
||||
S["home_system"] >> pref.home_system
|
||||
S["birthplace"] >> pref.birthplace
|
||||
S["citizenship"] >> pref.citizenship
|
||||
S["faction"] >> pref.faction
|
||||
S["religion"] >> pref.religion
|
||||
S["economic_status"] >> pref.economic_status
|
||||
|
||||
/datum/category_item/player_setup_item/general/background/save_character(var/savefile/S)
|
||||
S["med_record"] << pref.med_record
|
||||
S["sec_record"] << pref.sec_record
|
||||
S["gen_record"] << pref.gen_record
|
||||
S["home_system"] << pref.home_system
|
||||
S["birthplace"] << pref.birthplace
|
||||
S["citizenship"] << pref.citizenship
|
||||
S["faction"] << pref.faction
|
||||
S["religion"] << pref.religion
|
||||
S["economic_status"] << pref.economic_status
|
||||
/datum/category_item/player_setup_item/general/background/save_character(list/save_data)
|
||||
save_data["med_record"] = pref.med_record
|
||||
save_data["sec_record"] = pref.sec_record
|
||||
save_data["gen_record"] = pref.gen_record
|
||||
save_data["home_system"] = pref.home_system
|
||||
save_data["birthplace"] = pref.birthplace
|
||||
save_data["citizenship"] = pref.citizenship
|
||||
save_data["faction"] = pref.faction
|
||||
save_data["religion"] = pref.religion
|
||||
save_data["economic_status"] = pref.economic_status
|
||||
|
||||
/datum/category_item/player_setup_item/general/background/sanitize_character()
|
||||
if(!pref.home_system) pref.home_system = "Unset"
|
||||
|
||||
@@ -2,37 +2,37 @@
|
||||
name = "Flavor"
|
||||
sort_order = 6
|
||||
|
||||
/datum/category_item/player_setup_item/general/flavor/load_character(var/savefile/S)
|
||||
S["flavor_texts_general"] >> pref.flavor_texts["general"]
|
||||
S["flavor_texts_head"] >> pref.flavor_texts["head"]
|
||||
S["flavor_texts_face"] >> pref.flavor_texts["face"]
|
||||
S["flavor_texts_eyes"] >> pref.flavor_texts["eyes"]
|
||||
S["flavor_texts_torso"] >> pref.flavor_texts["torso"]
|
||||
S["flavor_texts_arms"] >> pref.flavor_texts["arms"]
|
||||
S["flavor_texts_hands"] >> pref.flavor_texts["hands"]
|
||||
S["flavor_texts_legs"] >> pref.flavor_texts["legs"]
|
||||
S["flavor_texts_feet"] >> pref.flavor_texts["feet"]
|
||||
S["custom_link"] >> pref.custom_link
|
||||
/datum/category_item/player_setup_item/general/flavor/load_character(list/save_data)
|
||||
pref.flavor_texts["general"] = save_data["flavor_texts_general"]
|
||||
pref.flavor_texts["head"] = save_data["flavor_texts_head"]
|
||||
pref.flavor_texts["face"] = save_data["flavor_texts_face"]
|
||||
pref.flavor_texts["eyes"] = save_data["flavor_texts_eyes"]
|
||||
pref.flavor_texts["torso"] = save_data["flavor_texts_torso"]
|
||||
pref.flavor_texts["arms"] = save_data["flavor_texts_arms"]
|
||||
pref.flavor_texts["hands"] = save_data["flavor_texts_hands"]
|
||||
pref.flavor_texts["legs"] = save_data["flavor_texts_legs"]
|
||||
pref.flavor_texts["feet"] = save_data["flavor_texts_feet"]
|
||||
pref.custom_link = save_data["custom_link"]
|
||||
//Flavour text for robots.
|
||||
S["flavour_texts_robot_Default"] >> pref.flavour_texts_robot["Default"]
|
||||
pref.flavour_texts_robot["Default"] = save_data["flavour_texts_robot_Default"]
|
||||
for(var/module in robot_module_types)
|
||||
S["flavour_texts_robot_[module]"] >> pref.flavour_texts_robot[module]
|
||||
pref.flavour_texts_robot[module] = save_data["flavour_texts_robot_[module]"]
|
||||
|
||||
/datum/category_item/player_setup_item/general/flavor/save_character(var/savefile/S)
|
||||
S["flavor_texts_general"] << pref.flavor_texts["general"]
|
||||
S["flavor_texts_head"] << pref.flavor_texts["head"]
|
||||
S["flavor_texts_face"] << pref.flavor_texts["face"]
|
||||
S["flavor_texts_eyes"] << pref.flavor_texts["eyes"]
|
||||
S["flavor_texts_torso"] << pref.flavor_texts["torso"]
|
||||
S["flavor_texts_arms"] << pref.flavor_texts["arms"]
|
||||
S["flavor_texts_hands"] << pref.flavor_texts["hands"]
|
||||
S["flavor_texts_legs"] << pref.flavor_texts["legs"]
|
||||
S["flavor_texts_feet"] << pref.flavor_texts["feet"]
|
||||
S["custom_link"] << pref.custom_link
|
||||
/datum/category_item/player_setup_item/general/flavor/save_character(list/save_data)
|
||||
save_data["flavor_texts_general"] = pref.flavor_texts["general"]
|
||||
save_data["flavor_texts_head"] = pref.flavor_texts["head"]
|
||||
save_data["flavor_texts_face"] = pref.flavor_texts["face"]
|
||||
save_data["flavor_texts_eyes"] = pref.flavor_texts["eyes"]
|
||||
save_data["flavor_texts_torso"] = pref.flavor_texts["torso"]
|
||||
save_data["flavor_texts_arms"] = pref.flavor_texts["arms"]
|
||||
save_data["flavor_texts_hands"] = pref.flavor_texts["hands"]
|
||||
save_data["flavor_texts_legs"] = pref.flavor_texts["legs"]
|
||||
save_data["flavor_texts_feet"] = pref.flavor_texts["feet"]
|
||||
save_data["custom_link"] = pref.custom_link
|
||||
|
||||
S["flavour_texts_robot_Default"] << pref.flavour_texts_robot["Default"]
|
||||
save_data["flavour_texts_robot_Default"] = pref.flavour_texts_robot["Default"]
|
||||
for(var/module in robot_module_types)
|
||||
S["flavour_texts_robot_[module]"] << pref.flavour_texts_robot[module]
|
||||
save_data["flavour_texts_robot_[module]"] = pref.flavour_texts_robot[module]
|
||||
|
||||
/datum/category_item/player_setup_item/general/flavor/sanitize_character()
|
||||
return
|
||||
|
||||
@@ -2,41 +2,41 @@
|
||||
name = "UI"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ui/load_preferences(var/savefile/S)
|
||||
S["UI_style"] >> pref.UI_style
|
||||
S["UI_style_color"] >> pref.UI_style_color
|
||||
S["UI_style_alpha"] >> pref.UI_style_alpha
|
||||
S["ooccolor"] >> pref.ooccolor
|
||||
S["tooltipstyle"] >> pref.tooltipstyle
|
||||
S["client_fps"] >> pref.client_fps
|
||||
S["ambience_freq"] >> pref.ambience_freq
|
||||
S["ambience_chance"] >> pref.ambience_chance
|
||||
S["tgui_fancy"] >> pref.tgui_fancy
|
||||
S["tgui_lock"] >> pref.tgui_lock
|
||||
S["tgui_input_mode"] >> pref.tgui_input_mode
|
||||
S["tgui_large_buttons"] >> pref.tgui_large_buttons
|
||||
S["tgui_swapped_buttons"] >> pref.tgui_swapped_buttons
|
||||
S["obfuscate_key"] >> pref.obfuscate_key
|
||||
S["obfuscate_job"] >> pref.obfuscate_job
|
||||
S["chat_timestamp"] >> pref.chat_timestamp
|
||||
/datum/category_item/player_setup_item/player_global/ui/load_preferences(datum/json_savefile/savefile)
|
||||
pref.UI_style = savefile.get_entry("UI_style")
|
||||
pref.UI_style_color = savefile.get_entry("UI_style_color")
|
||||
pref.UI_style_alpha = savefile.get_entry("UI_style_alpha")
|
||||
pref.ooccolor = savefile.get_entry("ooccolor")
|
||||
pref.tooltipstyle = savefile.get_entry("tooltipstyle")
|
||||
pref.client_fps = savefile.get_entry("client_fps")
|
||||
pref.ambience_freq = savefile.get_entry("ambience_freq")
|
||||
pref.ambience_chance = savefile.get_entry("ambience_chance")
|
||||
pref.tgui_fancy = savefile.get_entry("tgui_fancy")
|
||||
pref.tgui_lock = savefile.get_entry("tgui_lock")
|
||||
pref.tgui_input_mode = savefile.get_entry("tgui_input_mode")
|
||||
pref.tgui_large_buttons = savefile.get_entry("tgui_large_buttons")
|
||||
pref.tgui_swapped_buttons = savefile.get_entry("tgui_swapped_buttons")
|
||||
pref.obfuscate_key = savefile.get_entry("obfuscate_key")
|
||||
pref.obfuscate_job = savefile.get_entry("obfuscate_job")
|
||||
pref.chat_timestamp = savefile.get_entry("chat_timestamp")
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ui/save_preferences(var/savefile/S)
|
||||
S["UI_style"] << pref.UI_style
|
||||
S["UI_style_color"] << pref.UI_style_color
|
||||
S["UI_style_alpha"] << pref.UI_style_alpha
|
||||
S["ooccolor"] << pref.ooccolor
|
||||
S["tooltipstyle"] << pref.tooltipstyle
|
||||
S["client_fps"] << pref.client_fps
|
||||
S["ambience_freq"] << pref.ambience_freq
|
||||
S["ambience_chance"] << pref.ambience_chance
|
||||
S["tgui_fancy"] << pref.tgui_fancy
|
||||
S["tgui_lock"] << pref.tgui_lock
|
||||
S["tgui_input_mode"] << pref.tgui_input_mode
|
||||
S["tgui_large_buttons"] << pref.tgui_large_buttons
|
||||
S["tgui_swapped_buttons"] << pref.tgui_swapped_buttons
|
||||
S["obfuscate_key"] << pref.obfuscate_key
|
||||
S["obfuscate_job"] << pref.obfuscate_job
|
||||
S["chat_timestamp"] << pref.chat_timestamp
|
||||
/datum/category_item/player_setup_item/player_global/ui/save_preferences(datum/json_savefile/savefile)
|
||||
savefile.set_entry("UI_style", pref.UI_style)
|
||||
savefile.set_entry("UI_style_color", pref.UI_style_color)
|
||||
savefile.set_entry("UI_style_alpha", pref.UI_style_alpha)
|
||||
savefile.set_entry("ooccolor", pref.ooccolor)
|
||||
savefile.set_entry("tooltipstyle", pref.tooltipstyle)
|
||||
savefile.set_entry("client_fps", pref.client_fps)
|
||||
savefile.set_entry("ambience_freq", pref.ambience_freq)
|
||||
savefile.set_entry("ambience_chance", pref.ambience_chance)
|
||||
savefile.set_entry("tgui_fancy", pref.tgui_fancy)
|
||||
savefile.set_entry("tgui_lock", pref.tgui_lock)
|
||||
savefile.set_entry("tgui_input_mode", pref.tgui_input_mode)
|
||||
savefile.set_entry("tgui_large_buttons", pref.tgui_large_buttons)
|
||||
savefile.set_entry("tgui_swapped_buttons", pref.tgui_swapped_buttons)
|
||||
savefile.set_entry("obfuscate_key", pref.obfuscate_key)
|
||||
savefile.set_entry("obfuscate_job", pref.obfuscate_job)
|
||||
savefile.set_entry("chat_timestamp", pref.chat_timestamp)
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ui/sanitize_preferences()
|
||||
pref.UI_style = sanitize_inlist(pref.UI_style, all_ui_styles, initial(pref.UI_style))
|
||||
|
||||
@@ -1,141 +1,20 @@
|
||||
/datum/preferences
|
||||
var/preferences_enabled = null
|
||||
var/preferences_disabled = null
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings
|
||||
name = "Settings"
|
||||
sort_order = 2
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings/load_preferences(var/savefile/S)
|
||||
S["lastchangelog"] >> pref.lastchangelog
|
||||
S["lastnews"] >> pref.lastnews
|
||||
S["lastlorenews"] >> pref.lastlorenews
|
||||
S["default_slot"] >> pref.default_slot
|
||||
S["preferences"] >> pref.preferences_enabled
|
||||
S["preferences_disabled"] >> pref.preferences_disabled
|
||||
/datum/category_item/player_setup_item/player_global/settings/load_preferences(datum/json_savefile/savefile)
|
||||
pref.lastchangelog = savefile.get_entry("lastchangelog")
|
||||
pref.lastnews = savefile.get_entry("lastnews")
|
||||
pref.lastlorenews = savefile.get_entry("lastlorenews")
|
||||
pref.default_slot = savefile.get_entry("default_slot")
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings/save_preferences(var/savefile/S)
|
||||
S["lastchangelog"] << pref.lastchangelog
|
||||
S["lastnews"] << pref.lastnews
|
||||
S["lastlorenews"] << pref.lastlorenews
|
||||
S["default_slot"] << pref.default_slot
|
||||
S["preferences"] << pref.preferences_enabled
|
||||
S["preferences_disabled"] << pref.preferences_disabled
|
||||
/datum/category_item/player_setup_item/player_global/settings/save_preferences(datum/json_savefile/savefile)
|
||||
savefile.set_entry("lastchangelog", pref.lastchangelog)
|
||||
savefile.set_entry("lastnews", pref.lastnews)
|
||||
savefile.set_entry("lastlorenews", pref.lastlorenews)
|
||||
savefile.set_entry("default_slot", pref.default_slot)
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings/sanitize_preferences()
|
||||
// Ensure our preferences are lists.
|
||||
if(!istype(pref.preferences_enabled, /list))
|
||||
pref.preferences_enabled = list()
|
||||
if(!istype(pref.preferences_disabled, /list))
|
||||
pref.preferences_disabled = list()
|
||||
|
||||
// Arrange preferences that have never been enabled/disabled.
|
||||
var/list/client_preference_keys = list()
|
||||
for(var/datum/client_preference/client_pref as anything in get_client_preferences())
|
||||
client_preference_keys += client_pref.key
|
||||
if((client_pref.key in pref.preferences_enabled) || (client_pref.key in pref.preferences_disabled))
|
||||
continue
|
||||
|
||||
if(client_pref.enabled_by_default)
|
||||
pref.preferences_enabled += client_pref.key
|
||||
else
|
||||
pref.preferences_disabled += client_pref.key
|
||||
|
||||
// Clean out preferences that no longer exist.
|
||||
for(var/key in pref.preferences_enabled)
|
||||
if(!(key in client_preference_keys))
|
||||
pref.preferences_enabled -= key
|
||||
for(var/key in pref.preferences_disabled)
|
||||
if(!(key in client_preference_keys))
|
||||
pref.preferences_disabled -= key
|
||||
|
||||
pref.lastchangelog = sanitize_text(pref.lastchangelog, initial(pref.lastchangelog))
|
||||
pref.lastnews = sanitize_text(pref.lastnews, initial(pref.lastnews))
|
||||
pref.default_slot = sanitize_integer(pref.default_slot, 1, config.character_slots, initial(pref.default_slot))
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings/content(var/mob/user)
|
||||
. = list()
|
||||
. += "<b>Preferences</b><br>"
|
||||
. += "<table>"
|
||||
var/mob/pref_mob = preference_mob()
|
||||
for(var/datum/client_preference/client_pref as anything in get_client_preferences())
|
||||
if(!client_pref.may_toggle(pref_mob))
|
||||
continue
|
||||
|
||||
. += "<tr><td>[client_pref.description]: </td>"
|
||||
if(pref_mob.is_preference_enabled(client_pref.key))
|
||||
. += "<td><span class='linkOn'><b>[client_pref.enabled_description]</b></span></td> <td><a href='?src=\ref[src];toggle_off=[client_pref.key]'>[client_pref.disabled_description]</a></td>"
|
||||
else
|
||||
. += "<td><a href='?src=\ref[src];toggle_on=[client_pref.key]'>[client_pref.enabled_description]</a></td> <td><span class='linkOn'><b>[client_pref.disabled_description]</b></span></td>"
|
||||
. += "</tr>"
|
||||
|
||||
. += "</table>"
|
||||
return jointext(., "")
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/settings/OnTopic(var/href,var/list/href_list, var/mob/user)
|
||||
var/mob/pref_mob = preference_mob()
|
||||
if(href_list["toggle_on"])
|
||||
. = pref_mob.set_preference(href_list["toggle_on"], TRUE)
|
||||
else if(href_list["toggle_off"])
|
||||
. = pref_mob.set_preference(href_list["toggle_off"], FALSE)
|
||||
if(.)
|
||||
return TOPIC_REFRESH
|
||||
|
||||
return ..()
|
||||
|
||||
/**
|
||||
* This can take either a single preference datum or a list of preferences, and will return true if *all* preferences in the arguments are enabled.
|
||||
*/
|
||||
/client/proc/is_preference_enabled(var/preference)
|
||||
if(!islist(preference))
|
||||
preference = list(preference)
|
||||
for(var/p in preference)
|
||||
var/datum/client_preference/cp = get_client_preference(p)
|
||||
if(!prefs || !cp || !istype(cp, /datum/client_preference) || !(cp.key in prefs.preferences_enabled))
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/client/proc/set_preference(var/preference, var/set_preference)
|
||||
var/datum/client_preference/cp = get_client_preference(preference)
|
||||
if(!cp)
|
||||
return FALSE
|
||||
preference = cp.key
|
||||
|
||||
if(set_preference && !(preference in prefs.preferences_enabled))
|
||||
return toggle_preference(cp)
|
||||
else if(!set_preference && (preference in prefs.preferences_enabled))
|
||||
return toggle_preference(cp)
|
||||
|
||||
/client/proc/toggle_preference(var/preference, var/set_preference)
|
||||
var/datum/client_preference/cp = get_client_preference(preference)
|
||||
if(!cp)
|
||||
return FALSE
|
||||
preference = cp.key
|
||||
|
||||
var/enabled
|
||||
if(preference in prefs.preferences_disabled)
|
||||
prefs.preferences_enabled |= preference
|
||||
prefs.preferences_disabled -= preference
|
||||
enabled = TRUE
|
||||
. = TRUE
|
||||
else if(preference in prefs.preferences_enabled)
|
||||
prefs.preferences_enabled -= preference
|
||||
prefs.preferences_disabled |= preference
|
||||
enabled = FALSE
|
||||
. = TRUE
|
||||
if(.)
|
||||
cp.toggled(mob, enabled)
|
||||
|
||||
/mob/proc/is_preference_enabled(var/preference)
|
||||
if(!client)
|
||||
return FALSE
|
||||
return client.is_preference_enabled(preference)
|
||||
|
||||
/mob/proc/set_preference(var/preference, var/set_preference)
|
||||
if(!client)
|
||||
return FALSE
|
||||
if(!client.prefs)
|
||||
log_debug("Client prefs found to be null for mob [src] and client [ckey], this should be investigated.")
|
||||
return FALSE
|
||||
|
||||
return client.set_preference(preference, set_preference)
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
var/datum/paiCandidate/candidate
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/pai/load_preferences(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/player_global/pai/load_preferences(datum/json_savefile/savefile)
|
||||
if(!candidate)
|
||||
candidate = new()
|
||||
var/preference_mob = preference_mob()
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
candidate.savefile_load(preference_mob)
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/pai/save_preferences(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/player_global/pai/save_preferences(datum/json_savefile/savefile)
|
||||
if(!candidate)
|
||||
return
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
name = "OOC"
|
||||
sort_order = 4
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ooc/load_preferences(var/savefile/S)
|
||||
S["ignored_players"] >> pref.ignored_players
|
||||
/datum/category_item/player_setup_item/player_global/ooc/load_preferences(datum/json_savefile/savefile)
|
||||
pref.ignored_players = savefile.get_entry("ignored_players")
|
||||
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ooc/save_preferences(var/savefile/S)
|
||||
S["ignored_players"] << pref.ignored_players
|
||||
/datum/category_item/player_setup_item/player_global/ooc/save_preferences(datum/json_savefile/savefile)
|
||||
savefile.set_entry("ignored_players", pref.ignored_players)
|
||||
|
||||
/*
|
||||
/datum/category_item/player_setup_item/player_global/ooc/sanitize_preferences()
|
||||
@@ -39,4 +39,4 @@
|
||||
return TOPIC_REFRESH
|
||||
|
||||
return ..()
|
||||
*/
|
||||
*/
|
||||
|
||||
@@ -1,481 +0,0 @@
|
||||
var/list/_client_preferences
|
||||
var/list/_client_preferences_by_key
|
||||
var/list/_client_preferences_by_type
|
||||
|
||||
/proc/get_client_preferences()
|
||||
if(!_client_preferences)
|
||||
_client_preferences = list()
|
||||
for(var/datum/client_preference/client_type as anything in subtypesof(/datum/client_preference))
|
||||
if(initial(client_type.description))
|
||||
_client_preferences += new client_type()
|
||||
return _client_preferences
|
||||
|
||||
/proc/get_client_preference(var/datum/client_preference/preference)
|
||||
if(istype(preference))
|
||||
return preference
|
||||
if(ispath(preference))
|
||||
return get_client_preference_by_type(preference)
|
||||
return get_client_preference_by_key(preference)
|
||||
|
||||
/proc/get_client_preference_by_key(var/preference)
|
||||
if(!_client_preferences_by_key)
|
||||
_client_preferences_by_key = list()
|
||||
for(var/datum/client_preference/client_pref as anything in get_client_preferences())
|
||||
_client_preferences_by_key[client_pref.key] = client_pref
|
||||
return _client_preferences_by_key[preference]
|
||||
|
||||
/proc/get_client_preference_by_type(var/preference)
|
||||
if(!_client_preferences_by_type)
|
||||
_client_preferences_by_type = list()
|
||||
for(var/datum/client_preference/client_pref as anything in get_client_preferences())
|
||||
_client_preferences_by_type[client_pref.type] = client_pref
|
||||
return _client_preferences_by_type[preference]
|
||||
|
||||
/datum/client_preference
|
||||
var/description
|
||||
var/key
|
||||
var/enabled_by_default = TRUE
|
||||
var/enabled_description = "Yes"
|
||||
var/disabled_description = "No"
|
||||
|
||||
/datum/client_preference/proc/may_toggle(var/mob/preference_mob)
|
||||
return TRUE
|
||||
|
||||
/datum/client_preference/proc/toggled(var/mob/preference_mob, var/enabled)
|
||||
return
|
||||
|
||||
/*********************
|
||||
* Player Preferences *
|
||||
*********************/
|
||||
|
||||
/datum/client_preference/play_admin_midis
|
||||
description ="Play admin midis"
|
||||
key = "SOUND_MIDI"
|
||||
|
||||
/datum/client_preference/play_lobby_music
|
||||
description ="Play lobby music"
|
||||
key = "SOUND_LOBBY"
|
||||
|
||||
/datum/client_preference/play_lobby_music/toggled(var/mob/preference_mob, var/enabled)
|
||||
if(!preference_mob.client || !preference_mob.client.media)
|
||||
return
|
||||
|
||||
if(enabled)
|
||||
preference_mob.client.playtitlemusic()
|
||||
else
|
||||
preference_mob.client.media.stop_music()
|
||||
|
||||
/datum/client_preference/play_ambiance
|
||||
description ="Play ambience"
|
||||
key = "SOUND_AMBIENCE"
|
||||
|
||||
/datum/client_preference/play_ambiance/toggled(var/mob/preference_mob, var/enabled)
|
||||
if(!enabled)
|
||||
preference_mob << sound(null, repeat = 0, wait = 0, volume = 0, channel = 1)
|
||||
preference_mob << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2)
|
||||
//VOREStation Add - Need to put it here because it should be ordered riiiight here.
|
||||
/datum/client_preference/play_jukebox
|
||||
description ="Play jukebox music"
|
||||
key = "SOUND_JUKEBOX"
|
||||
|
||||
/datum/client_preference/play_jukebox/toggled(var/mob/preference_mob, var/enabled)
|
||||
if(!enabled)
|
||||
preference_mob.stop_all_music()
|
||||
else
|
||||
preference_mob.update_music()
|
||||
|
||||
/datum/client_preference/eating_noises
|
||||
description = "Eating Noises"
|
||||
key = "EATING_NOISES"
|
||||
enabled_description = "Noisy"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/digestion_noises
|
||||
description = "Digestion Noises"
|
||||
key = "DIGEST_NOISES"
|
||||
enabled_description = "Noisy"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/belch_noises // Belching noises - pref toggle for 'em
|
||||
description = "Burping"
|
||||
key = "BELCH_NOISES"
|
||||
enabled_description = "Noisy"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/emote_noises
|
||||
description = "Emote Noises" //MERP
|
||||
key = "EMOTE_NOISES"
|
||||
enabled_description = "Noisy"
|
||||
disabled_description = "Silent"
|
||||
/datum/client_preference/whisubtle_vis
|
||||
description = "Whi/Subtles Ghost Visible"
|
||||
key = "WHISUBTLE_VIS"
|
||||
enabled_description = "Visible"
|
||||
disabled_description = "Hidden"
|
||||
enabled_by_default = FALSE
|
||||
|
||||
/datum/client_preference/ghost_see_whisubtle
|
||||
description = "See subtles/whispers as ghost"
|
||||
key = "GHOST_SEE_WHISUBTLE"
|
||||
enabled_description = "Visible"
|
||||
disabled_description = "Hidden"
|
||||
enabled_by_default = TRUE
|
||||
//VOREStation Add End
|
||||
/datum/client_preference/weather_sounds
|
||||
description ="Weather sounds"
|
||||
key = "SOUND_WEATHER"
|
||||
enabled_description = "Audible"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/supermatter_hum
|
||||
description ="Supermatter hum"
|
||||
key = "SOUND_SUPERMATTER"
|
||||
enabled_description = "Audible"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/ghost_ears
|
||||
description ="Ghost ears"
|
||||
key = "CHAT_GHOSTEARS"
|
||||
enabled_description = "All Speech"
|
||||
disabled_description = "Nearby"
|
||||
|
||||
/datum/client_preference/ghost_sight
|
||||
description ="Ghost sight"
|
||||
key = "CHAT_GHOSTSIGHT"
|
||||
enabled_description = "All Emotes"
|
||||
disabled_description = "Nearby"
|
||||
|
||||
/datum/client_preference/ghost_radio
|
||||
description ="Ghost radio"
|
||||
key = "CHAT_GHOSTRADIO"
|
||||
enabled_description = "All Chatter"
|
||||
disabled_description = "Nearby"
|
||||
|
||||
/datum/client_preference/chat_tags
|
||||
description ="Chat tags"
|
||||
key = "CHAT_SHOWICONS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/air_pump_noise
|
||||
description ="Air Pump Ambient Noise"
|
||||
key = "SOUND_AIRPUMP"
|
||||
enabled_description = "Audible"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/old_door_sounds
|
||||
description ="Old Door Sounds"
|
||||
key = "SOUND_OLDDOORS"
|
||||
enabled_description = "Old"
|
||||
disabled_description = "New"
|
||||
|
||||
/datum/client_preference/department_door_sounds
|
||||
description ="Department-Specific Door Sounds"
|
||||
key = "SOUND_DEPARTMENTDOORS"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/pickup_sounds
|
||||
description = "Picked Up Item Sounds"
|
||||
key = "SOUND_PICKED"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/drop_sounds
|
||||
description = "Dropped Item Sounds"
|
||||
key = "SOUND_DROPPED"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/mob_tooltips
|
||||
description ="Mob tooltips"
|
||||
key = "MOB_TOOLTIPS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/inv_tooltips
|
||||
description ="Inventory tooltips"
|
||||
key = "INV_TOOLTIPS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/attack_icons
|
||||
description ="Attack icons"
|
||||
key = "ATTACK_ICONS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/precision_placement
|
||||
description ="Precision Placement"
|
||||
key = "PRECISE_PLACEMENT"
|
||||
enabled_description = "Active"
|
||||
disabled_description = "Inactive"
|
||||
|
||||
/datum/client_preference/hotkeys_default
|
||||
description ="Hotkeys Default"
|
||||
key = "HUD_HOTKEYS"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
enabled_by_default = FALSE // Backwards compatibility
|
||||
|
||||
/datum/client_preference/show_typing_indicator
|
||||
description ="Typing indicator"
|
||||
key = "SHOW_TYPING"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/show_typing_indicator/toggled(var/mob/preference_mob, var/enabled)
|
||||
if(!enabled)
|
||||
preference_mob.client?.stop_thinking()
|
||||
|
||||
/datum/client_preference/show_typing_indicator_subtle
|
||||
description ="Typing indicator (subtle)"
|
||||
key = "SHOW_TYPING_SUBTLE"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/show_ooc
|
||||
description ="OOC chat"
|
||||
key = "CHAT_OOC"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/show_looc
|
||||
description ="LOOC chat"
|
||||
key = "CHAT_LOOC"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/show_dsay
|
||||
description ="Dead chat"
|
||||
key = "CHAT_DEAD"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/check_mention
|
||||
description ="Emphasize Name Mention"
|
||||
key = "CHAT_MENTION"
|
||||
enabled_description = "Emphasize"
|
||||
disabled_description = "Normal"
|
||||
|
||||
/datum/client_preference/show_progress_bar
|
||||
description ="Progress Bar"
|
||||
key = "SHOW_PROGRESS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/safefiring
|
||||
description = "Gun Firing Intent Requirement"
|
||||
key = "SAFE_FIRING"
|
||||
enabled_description = "Safe"
|
||||
disabled_description = "Dangerous"
|
||||
|
||||
/datum/client_preference/browser_style
|
||||
description = "Fake NanoUI Browser Style"
|
||||
key = "BROWSER_STYLED"
|
||||
enabled_description = "Fancy"
|
||||
disabled_description = "Plain"
|
||||
|
||||
/datum/client_preference/ambient_occlusion
|
||||
description = "Fake Ambient Occlusion"
|
||||
key = "AMBIENT_OCCLUSION_PREF"
|
||||
enabled_by_default = FALSE
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/ambient_occlusion/toggled(var/mob/preference_mob, var/enabled)
|
||||
. = ..()
|
||||
if(preference_mob && preference_mob.plane_holder)
|
||||
var/datum/plane_holder/PH = preference_mob.plane_holder
|
||||
PH.set_ao(VIS_OBJS, enabled)
|
||||
PH.set_ao(VIS_MOBS, enabled)
|
||||
|
||||
/datum/client_preference/instrument_toggle
|
||||
description ="Hear In-game Instruments"
|
||||
key = "SOUND_INSTRUMENT"
|
||||
|
||||
/datum/client_preference/vchat_enable
|
||||
description = "Enable/Disable TGChat"
|
||||
key = "VCHAT_ENABLE"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/status_indicators
|
||||
description = "Status Indicators"
|
||||
key = "SHOW_STATUS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/radio_sounds
|
||||
description = "Radio Sounds"
|
||||
key = "RADIO_SOUNDS"
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/say_sounds
|
||||
description = "Say Sounds"
|
||||
key = "SAY_SOUNDS"
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/emote_sounds
|
||||
description = "Me Sounds"
|
||||
key = "EMOTE_SOUNDS"
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/whisper_sounds
|
||||
description = "Whisper Sounds"
|
||||
key = "WHISPER_SOUNDS"
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/subtle_sounds
|
||||
description = "Subtle Sounds"
|
||||
key = "SUBTLE_SOUNDS"
|
||||
enabled_description = "On"
|
||||
disabled_description = "Off"
|
||||
|
||||
/datum/client_preference/vore_health_bars
|
||||
description = "Vore Health Bars"
|
||||
key = "VORE_HEALTH_BARS"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/runechat_mob
|
||||
description = "Runechat (Mobs)"
|
||||
key = "RUNECHAT_MOB"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/runechat_obj
|
||||
description = "Runechat (Objs)"
|
||||
key = "RUNECHAT_OBJ"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/runechat_border
|
||||
description = "Runechat Message Border"
|
||||
key = "RUNECHAT_BORDER"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
enabled_by_default = TRUE
|
||||
|
||||
/datum/client_preference/runechat_long_messages
|
||||
description = "Runechat Message Length"
|
||||
key = "RUNECHAT_LONG"
|
||||
enabled_description = "Long"
|
||||
disabled_description = "Short"
|
||||
enabled_by_default = FALSE
|
||||
|
||||
/datum/client_preference/status_indicators/toggled(mob/preference_mob, enabled)
|
||||
. = ..()
|
||||
if(preference_mob && preference_mob.plane_holder)
|
||||
var/datum/plane_holder/PH = preference_mob.plane_holder
|
||||
PH.set_vis(VIS_STATUS, enabled)
|
||||
|
||||
/datum/client_preference/show_lore_news
|
||||
description = "Lore News Popup"
|
||||
key = "NEWS_POPUP"
|
||||
enabled_by_default = TRUE
|
||||
enabled_description = "Popup New On Login"
|
||||
disabled_description = "Do Nothing"
|
||||
|
||||
/datum/client_preference/play_mentorhelp_ping
|
||||
description = "Mentorhelps"
|
||||
key = "SOUND_MENTORHELP"
|
||||
enabled_description = "Hear"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/player_tips
|
||||
description = "Receive Tips Periodically"
|
||||
key = "RECEIVE_TIPS"
|
||||
enabled_description = "Enabled"
|
||||
disabled_description = "Disabled"
|
||||
|
||||
/datum/client_preference/pain_frequency
|
||||
description = "Pain Messages Cooldown"
|
||||
key = "PAIN_FREQUENCY"
|
||||
enabled_by_default = FALSE
|
||||
enabled_description = "Extended"
|
||||
disabled_description = "Default"
|
||||
|
||||
/datum/client_preference/auto_afk
|
||||
description = "Automatic AFK Status"
|
||||
key = "AUTO_AFK"
|
||||
enabled_by_default = TRUE
|
||||
enabled_description = "Automatic"
|
||||
disabled_description = "Manual Only"
|
||||
|
||||
/datum/client_preference/tgui_say
|
||||
description = "TGUI Say: Use TGUI For Say Input"
|
||||
key = "TGUI_SAY"
|
||||
enabled_by_default = TRUE
|
||||
enabled_description = "Yes"
|
||||
disabled_description = "No"
|
||||
|
||||
/datum/client_preference/tgui_say_light
|
||||
description = "TGUI Say: Use Light Mode"
|
||||
key = "TGUI_SAY_LIGHT_MODE"
|
||||
enabled_by_default = FALSE
|
||||
enabled_description = "Yes"
|
||||
disabled_description = "No"
|
||||
|
||||
/********************
|
||||
* Staff Preferences *
|
||||
********************/
|
||||
/datum/client_preference/admin/may_toggle(var/mob/preference_mob)
|
||||
return check_rights(R_ADMIN|R_EVENT, 0, preference_mob)
|
||||
|
||||
/datum/client_preference/mod/may_toggle(var/mob/preference_mob)
|
||||
return check_rights(R_MOD|R_ADMIN, 0, preference_mob)
|
||||
|
||||
/datum/client_preference/debug/may_toggle(var/mob/preference_mob)
|
||||
return check_rights(R_DEBUG|R_ADMIN, 0, preference_mob)
|
||||
|
||||
/datum/client_preference/mod/show_attack_logs
|
||||
description = "Attack Log Messages"
|
||||
key = "CHAT_ATTACKLOGS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
enabled_by_default = FALSE
|
||||
|
||||
/datum/client_preference/debug/show_debug_logs
|
||||
description = "Debug Log Messages"
|
||||
key = "CHAT_DEBUGLOGS"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
enabled_by_default = FALSE
|
||||
|
||||
/datum/client_preference/admin/show_chat_prayers
|
||||
description = "Chat Prayers"
|
||||
key = "CHAT_PRAYER"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/holder/may_toggle(var/mob/preference_mob)
|
||||
return preference_mob && preference_mob.client && preference_mob.client.holder
|
||||
|
||||
/datum/client_preference/holder/play_adminhelp_ping
|
||||
description = "Adminhelps"
|
||||
key = "SOUND_ADMINHELP"
|
||||
enabled_description = "Hear"
|
||||
disabled_description = "Silent"
|
||||
|
||||
/datum/client_preference/holder/hear_radio
|
||||
description = "Radio chatter"
|
||||
key = "CHAT_RADIO"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/holder/show_rlooc
|
||||
description ="Remote LOOC chat"
|
||||
key = "CHAT_RLOOC"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
|
||||
/datum/client_preference/holder/show_staff_dsay
|
||||
description ="Staff Deadchat"
|
||||
key = "CHAT_ADSAY"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
@@ -45,19 +45,19 @@ var/list/gear_datums = list()
|
||||
sort_order = 1
|
||||
var/current_tab = "General"
|
||||
|
||||
/datum/category_item/player_setup_item/loadout/load_character(var/savefile/S)
|
||||
from_file(S["gear_list"], pref.gear_list)
|
||||
from_file(S["gear_slot"], pref.gear_slot)
|
||||
/datum/category_item/player_setup_item/loadout/load_character(list/save_data)
|
||||
pref.gear_list = save_data["gear_list"]
|
||||
pref.gear_slot = save_data["gear_slot"]
|
||||
if(pref.gear_list!=null && pref.gear_slot!=null)
|
||||
pref.gear = pref.gear_list["[pref.gear_slot]"]
|
||||
else
|
||||
from_file(S["gear"], pref.gear)
|
||||
pref.gear = save_data["gear"]
|
||||
pref.gear_slot = 1
|
||||
|
||||
/datum/category_item/player_setup_item/loadout/save_character(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/loadout/save_character(list/save_data)
|
||||
pref.gear_list["[pref.gear_slot]"] = pref.gear
|
||||
to_file(S["gear_list"], pref.gear_list)
|
||||
to_file(S["gear_slot"], pref.gear_slot)
|
||||
save_data["gear_list"] = pref.gear_list
|
||||
save_data["gear_slot"] = pref.gear_slot
|
||||
|
||||
/datum/category_item/player_setup_item/loadout/proc/valid_gear_choices(var/max_cost)
|
||||
. = list()
|
||||
|
||||
@@ -2,41 +2,41 @@
|
||||
name = "Occupation"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/occupation/load_character(var/savefile/S)
|
||||
S["alternate_option"] >> pref.alternate_option
|
||||
S["job_civilian_high"] >> pref.job_civilian_high
|
||||
S["job_civilian_med"] >> pref.job_civilian_med
|
||||
S["job_civilian_low"] >> pref.job_civilian_low
|
||||
S["job_medsci_high"] >> pref.job_medsci_high
|
||||
S["job_medsci_med"] >> pref.job_medsci_med
|
||||
S["job_medsci_low"] >> pref.job_medsci_low
|
||||
S["job_engsec_high"] >> pref.job_engsec_high
|
||||
S["job_engsec_med"] >> pref.job_engsec_med
|
||||
S["job_engsec_low"] >> pref.job_engsec_low
|
||||
/datum/category_item/player_setup_item/occupation/load_character(list/save_data)
|
||||
pref.alternate_option = save_data["alternate_option"]
|
||||
pref.job_civilian_high = save_data["job_civilian_high"]
|
||||
pref.job_civilian_med = save_data["job_civilian_med"]
|
||||
pref.job_civilian_low = save_data["job_civilian_low"]
|
||||
pref.job_medsci_high = save_data["job_medsci_high"]
|
||||
pref.job_medsci_med = save_data["job_medsci_med"]
|
||||
pref.job_medsci_low = save_data["job_medsci_low"]
|
||||
pref.job_engsec_high = save_data["job_engsec_high"]
|
||||
pref.job_engsec_med = save_data["job_engsec_med"]
|
||||
pref.job_engsec_low = save_data["job_engsec_low"]
|
||||
//VOREStation Add
|
||||
S["job_talon_low"] >> pref.job_talon_low
|
||||
S["job_talon_med"] >> pref.job_talon_med
|
||||
S["job_talon_high"] >> pref.job_talon_high
|
||||
pref.job_talon_low = save_data["job_talon_low"]
|
||||
pref.job_talon_med = save_data["job_talon_med"]
|
||||
pref.job_talon_high = save_data["job_talon_high"]
|
||||
//VOREStation Add End
|
||||
S["player_alt_titles"] >> pref.player_alt_titles
|
||||
pref.player_alt_titles = save_data["player_alt_titles"]
|
||||
|
||||
/datum/category_item/player_setup_item/occupation/save_character(var/savefile/S)
|
||||
S["alternate_option"] << pref.alternate_option
|
||||
S["job_civilian_high"] << pref.job_civilian_high
|
||||
S["job_civilian_med"] << pref.job_civilian_med
|
||||
S["job_civilian_low"] << pref.job_civilian_low
|
||||
S["job_medsci_high"] << pref.job_medsci_high
|
||||
S["job_medsci_med"] << pref.job_medsci_med
|
||||
S["job_medsci_low"] << pref.job_medsci_low
|
||||
S["job_engsec_high"] << pref.job_engsec_high
|
||||
S["job_engsec_med"] << pref.job_engsec_med
|
||||
S["job_engsec_low"] << pref.job_engsec_low
|
||||
/datum/category_item/player_setup_item/occupation/save_character(list/save_data)
|
||||
save_data["alternate_option"] = pref.alternate_option
|
||||
save_data["job_civilian_high"] = pref.job_civilian_high
|
||||
save_data["job_civilian_med"] = pref.job_civilian_med
|
||||
save_data["job_civilian_low"] = pref.job_civilian_low
|
||||
save_data["job_medsci_high"] = pref.job_medsci_high
|
||||
save_data["job_medsci_med"] = pref.job_medsci_med
|
||||
save_data["job_medsci_low"] = pref.job_medsci_low
|
||||
save_data["job_engsec_high"] = pref.job_engsec_high
|
||||
save_data["job_engsec_med"] = pref.job_engsec_med
|
||||
save_data["job_engsec_low"] = pref.job_engsec_low
|
||||
//VOREStation Add
|
||||
S["job_talon_low"] << pref.job_talon_low
|
||||
S["job_talon_med"] << pref.job_talon_med
|
||||
S["job_talon_high"] << pref.job_talon_high
|
||||
save_data["job_talon_low"] = pref.job_talon_low
|
||||
save_data["job_talon_med"] = pref.job_talon_med
|
||||
save_data["job_talon_high"] = pref.job_talon_high
|
||||
//VOREStation Add End
|
||||
S["player_alt_titles"] << pref.player_alt_titles
|
||||
save_data["player_alt_titles"] = pref.player_alt_titles
|
||||
|
||||
/datum/category_item/player_setup_item/occupation/sanitize_character()
|
||||
pref.alternate_option = sanitize_integer(pref.alternate_option, 0, 2, initial(pref.alternate_option))
|
||||
|
||||
@@ -59,21 +59,21 @@
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
PS.sanitize_setup()
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/load_character(var/savefile/S)
|
||||
/datum/category_collection/player_setup_collection/proc/load_character(list/save_data)
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
PS.load_character(S)
|
||||
PS.load_character(save_data)
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/save_character(var/savefile/S)
|
||||
/datum/category_collection/player_setup_collection/proc/save_character(list/save_data)
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
PS.save_character(S)
|
||||
PS.save_character(save_data)
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/load_preferences(var/savefile/S)
|
||||
/datum/category_collection/player_setup_collection/proc/load_preferences(datum/json_savefile/savefile)
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
PS.load_preferences(S)
|
||||
PS.load_preferences(savefile)
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/save_preferences(var/savefile/S)
|
||||
/datum/category_collection/player_setup_collection/proc/save_preferences(datum/json_savefile/savefile)
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
PS.save_preferences(S)
|
||||
PS.save_preferences(savefile)
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/copy_to_mob(var/mob/living/carbon/human/C)
|
||||
for(var/datum/category_group/player_setup_category/PS in categories)
|
||||
@@ -86,6 +86,7 @@
|
||||
dat += "[PS.name] " // TODO: Check how to properly mark a href/button selected in a classic browser window
|
||||
else
|
||||
dat += "<a href='?src=\ref[src];category=\ref[PS]'>[PS.name]</a> "
|
||||
dat += "<a href='?src=\ref[src];game_prefs=1'>Game Options</a>"
|
||||
return dat
|
||||
|
||||
/datum/category_collection/player_setup_collection/proc/content(var/mob/user)
|
||||
@@ -105,6 +106,9 @@
|
||||
selected_category = category
|
||||
. = 1
|
||||
|
||||
else if(href_list["game_prefs"])
|
||||
user.client.prefs.tgui_interact(user)
|
||||
|
||||
if(.)
|
||||
user.client.prefs.ShowChoices(user)
|
||||
|
||||
@@ -123,29 +127,29 @@
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.sanitize_character()
|
||||
|
||||
/datum/category_group/player_setup_category/proc/load_character(var/savefile/S)
|
||||
/datum/category_group/player_setup_category/proc/load_character(list/save_data)
|
||||
// Load all data, then sanitize it.
|
||||
// Need due to, for example, the 01_basic module relying on species having been loaded to sanitize correctly but that isn't loaded until module 03_body.
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.load_character(S)
|
||||
PI.load_character(save_data)
|
||||
|
||||
|
||||
/datum/category_group/player_setup_category/proc/save_character(var/savefile/S)
|
||||
/datum/category_group/player_setup_category/proc/save_character(list/save_data)
|
||||
// Sanitize all data, then save it
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.sanitize_character()
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.save_character(S)
|
||||
PI.save_character(save_data)
|
||||
|
||||
/datum/category_group/player_setup_category/proc/load_preferences(var/savefile/S)
|
||||
/datum/category_group/player_setup_category/proc/load_preferences(datum/json_savefile/savefile)
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.load_preferences(S)
|
||||
PI.load_preferences(savefile)
|
||||
|
||||
/datum/category_group/player_setup_category/proc/save_preferences(var/savefile/S)
|
||||
/datum/category_group/player_setup_category/proc/save_preferences(datum/json_savefile/savefile)
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.sanitize_preferences()
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
PI.save_preferences(S)
|
||||
PI.save_preferences(savefile)
|
||||
|
||||
/datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C)
|
||||
for(var/datum/category_item/player_setup_item/PI in items)
|
||||
@@ -188,25 +192,25 @@
|
||||
/*
|
||||
* Called when the item is asked to load per character settings
|
||||
*/
|
||||
/datum/category_item/player_setup_item/proc/load_character(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/proc/load_character(list/save_data)
|
||||
return
|
||||
|
||||
/*
|
||||
* Called when the item is asked to save per character settings
|
||||
*/
|
||||
/datum/category_item/player_setup_item/proc/save_character(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/proc/save_character(list/save_data)
|
||||
return
|
||||
|
||||
/*
|
||||
* Called when the item is asked to load user/global settings
|
||||
*/
|
||||
/datum/category_item/player_setup_item/proc/load_preferences(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/proc/load_preferences(datum/json_savefile/savefile)
|
||||
return
|
||||
|
||||
/*
|
||||
* Called when the item is asked to save user/global settings
|
||||
*/
|
||||
/datum/category_item/player_setup_item/proc/save_preferences(var/savefile/S)
|
||||
/datum/category_item/player_setup_item/proc/save_preferences(datum/json_savefile/savefile)
|
||||
return
|
||||
|
||||
/*
|
||||
|
||||
@@ -2,15 +2,15 @@
|
||||
name = "Skills"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/skills/load_character(var/savefile/S)
|
||||
S["skills"] >> pref.skills
|
||||
S["used_skillpoints"] >> pref.used_skillpoints
|
||||
S["skill_specialization"] >> pref.skill_specialization
|
||||
/datum/category_item/player_setup_item/skills/load_character(list/save_data)
|
||||
pref.skills = save_data["skills"]
|
||||
pref.used_skillpoints = save_data["used_skillpoints"]
|
||||
pref.skill_specialization = save_data["skill_specialization"]
|
||||
|
||||
/datum/category_item/player_setup_item/skills/save_character(var/savefile/S)
|
||||
S["skills"] << pref.skills
|
||||
S["used_skillpoints"] << pref.used_skillpoints
|
||||
S["skill_specialization"] << pref.skill_specialization
|
||||
/datum/category_item/player_setup_item/skills/save_character(list/save_data)
|
||||
save_data["skills"] = pref.skills
|
||||
save_data["used_skillpoints"] = pref.used_skillpoints
|
||||
save_data["skill_specialization"] = pref.skill_specialization
|
||||
|
||||
/datum/category_item/player_setup_item/skills/sanitize_character()
|
||||
if(SKILLS == null) setup_skills()
|
||||
|
||||
@@ -35,11 +35,11 @@ var/list/trait_categories = list() // The categories available for the trait men
|
||||
sort_order = 1
|
||||
var/current_tab = "Physical"
|
||||
|
||||
/datum/category_item/player_setup_item/traits/load_character(var/savefile/S)
|
||||
S["traits"] >> pref.traits
|
||||
/datum/category_item/player_setup_item/traits/load_character(list/save_data)
|
||||
pref.traits = save_data["traits"]
|
||||
|
||||
/datum/category_item/player_setup_item/traits/save_character(var/savefile/S)
|
||||
S["traits"] << pref.traits
|
||||
/datum/category_item/player_setup_item/traits/save_character(list/save_data)
|
||||
save_data["traits"] = pref.traits
|
||||
|
||||
|
||||
/datum/category_item/player_setup_item/traits/content()
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
name = "General Volume"
|
||||
sort_order = 1
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/volume/load_preferences(var/savefile/S)
|
||||
S["volume_channels"] >> pref.volume_channels
|
||||
/datum/category_item/player_setup_item/volume_sliders/volume/load_preferences(datum/json_savefile/savefile)
|
||||
pref.volume_channels = savefile.get_entry("volume_channels")
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/volume/save_preferences(var/savefile/S)
|
||||
S["volume_channels"] << pref.volume_channels
|
||||
/datum/category_item/player_setup_item/volume_sliders/volume/save_preferences(datum/json_savefile/savefile)
|
||||
savefile.set_entry("volume_channels", pref.volume_channels)
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/volume/sanitize_preferences()
|
||||
if(isnull(pref.volume_channels))
|
||||
@@ -74,7 +74,7 @@
|
||||
/datum/volume_panel/tgui_data(mob/user)
|
||||
if(!user.client || !user.client.prefs)
|
||||
return list("error" = TRUE)
|
||||
|
||||
|
||||
var/list/data = ..()
|
||||
data["volume_channels"] = user.client.prefs.volume_channels
|
||||
return data
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
name = "Media"
|
||||
sort_order = 2
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/media/load_preferences(var/savefile/S)
|
||||
S["media_volume"] >> pref.media_volume
|
||||
S["media_player"] >> pref.media_player
|
||||
/datum/category_item/player_setup_item/volume_sliders/media/load_preferences(datum/json_savefile/savefile)
|
||||
pref.media_volume = savefile.get_entry("media_volume")
|
||||
pref.media_player = savefile.get_entry("media_player")
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/media/save_preferences(var/savefile/S)
|
||||
S["media_volume"] << pref.media_volume
|
||||
S["media_player"] << pref.media_player
|
||||
/datum/category_item/player_setup_item/volume_sliders/media/save_preferences(datum/json_savefile/savefile)
|
||||
savefile.set_entry("media_volume", pref.media_volume)
|
||||
savefile.set_entry("media_player", pref.media_player)
|
||||
|
||||
/datum/category_item/player_setup_item/volume_sliders/media/sanitize_preferences()
|
||||
pref.media_volume = isnum(pref.media_volume) ? CLAMP(pref.media_volume, 0, 1) : initial(pref.media_volume)
|
||||
|
||||
@@ -22,27 +22,27 @@
|
||||
name = "Size"
|
||||
sort_order = 2
|
||||
|
||||
/datum/category_item/player_setup_item/vore/size/load_character(var/savefile/S)
|
||||
S["size_multiplier"] >> pref.size_multiplier
|
||||
S["weight_vr"] >> pref.weight_vr
|
||||
S["weight_gain"] >> pref.weight_gain
|
||||
S["weight_loss"] >> pref.weight_loss
|
||||
S["fuzzy"] >> pref.fuzzy
|
||||
S["offset_override"] >> pref.offset_override
|
||||
S["voice_freq"] >> pref.voice_freq
|
||||
S["voice_sound"] >> pref.voice_sound
|
||||
S["custom_speech_bubble"] >> pref.custom_speech_bubble
|
||||
/datum/category_item/player_setup_item/vore/size/load_character(list/save_data)
|
||||
pref.size_multiplier = save_data["size_multiplier"]
|
||||
pref.weight_vr = save_data["weight_vr"]
|
||||
pref.weight_gain = save_data["weight_gain"]
|
||||
pref.weight_loss = save_data["weight_loss"]
|
||||
pref.fuzzy = save_data["fuzzy"]
|
||||
pref.offset_override = save_data["offset_override"]
|
||||
pref.voice_freq = save_data["voice_freq"]
|
||||
pref.voice_sound = save_data["voice_sound"]
|
||||
pref.custom_speech_bubble = save_data["custom_speech_bubble"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/size/save_character(var/savefile/S)
|
||||
S["size_multiplier"] << pref.size_multiplier
|
||||
S["weight_vr"] << pref.weight_vr
|
||||
S["weight_gain"] << pref.weight_gain
|
||||
S["weight_loss"] << pref.weight_loss
|
||||
S["fuzzy"] << pref.fuzzy
|
||||
S["offset_override"] << pref.offset_override
|
||||
S["voice_freq"] << pref.voice_freq
|
||||
S["voice_sound"] << pref.voice_sound
|
||||
S["custom_speech_bubble"] << pref.custom_speech_bubble
|
||||
/datum/category_item/player_setup_item/vore/size/save_character(list/save_data)
|
||||
save_data["size_multiplier"] = pref.size_multiplier
|
||||
save_data["weight_vr"] = pref.weight_vr
|
||||
save_data["weight_gain"] = pref.weight_gain
|
||||
save_data["weight_loss"] = pref.weight_loss
|
||||
save_data["fuzzy"] = pref.fuzzy
|
||||
save_data["offset_override"] = pref.offset_override
|
||||
save_data["voice_freq"] = pref.voice_freq
|
||||
save_data["voice_sound"] = pref.voice_sound
|
||||
save_data["custom_speech_bubble"] = pref.custom_speech_bubble
|
||||
|
||||
/datum/category_item/player_setup_item/vore/size/sanitize_character()
|
||||
pref.weight_vr = sanitize_integer(pref.weight_vr, WEIGHT_MIN, WEIGHT_MAX, initial(pref.weight_vr))
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
name = "Egg appearance."
|
||||
sort_order = 3
|
||||
|
||||
/datum/category_item/player_setup_item/vore/egg/load_character(var/savefile/S)
|
||||
S["vore_egg_type"] >> pref.vore_egg_type
|
||||
S["autohiss"] >> pref.autohiss // VOREStation Add
|
||||
/datum/category_item/player_setup_item/vore/egg/load_character(list/save_data)
|
||||
pref.vore_egg_type = save_data["vore_egg_type"]
|
||||
pref.autohiss = save_data["autohiss"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/egg/save_character(var/savefile/S)
|
||||
S["vore_egg_type"] << pref.vore_egg_type
|
||||
S["autohiss"] << pref.autohiss // VOREStation Add
|
||||
/datum/category_item/player_setup_item/vore/egg/save_character(list/save_data)
|
||||
save_data["vore_egg_type"] = pref.vore_egg_type
|
||||
save_data["autohiss"] = pref.autohiss
|
||||
|
||||
/datum/category_item/player_setup_item/vore/egg/sanitize_character()
|
||||
pref.vore_egg_type = sanitize_inlist(pref.vore_egg_type, global_vore_egg_types, initial(pref.vore_egg_type))
|
||||
|
||||
@@ -9,16 +9,15 @@
|
||||
name = "Resleeving"
|
||||
sort_order = 4
|
||||
|
||||
/datum/category_item/player_setup_item/vore/resleeve/load_character(var/savefile/S)
|
||||
S["resleeve_lock"] >> pref.resleeve_lock
|
||||
S["resleeve_scan"] >> pref.resleeve_scan
|
||||
S["mind_scan"] >> pref.mind_scan
|
||||
/datum/category_item/player_setup_item/vore/resleeve/load_character(list/save_data)
|
||||
pref.resleeve_lock = save_data["resleeve_lock"]
|
||||
pref.resleeve_scan = save_data["resleeve_scan"]
|
||||
pref.mind_scan = save_data["mind_scan"]
|
||||
|
||||
|
||||
/datum/category_item/player_setup_item/vore/resleeve/save_character(var/savefile/S)
|
||||
S["resleeve_lock"] << pref.resleeve_lock
|
||||
S["resleeve_scan"] << pref.resleeve_scan
|
||||
S["mind_scan"] << pref.mind_scan
|
||||
/datum/category_item/player_setup_item/vore/resleeve/save_character(list/save_data)
|
||||
save_data["resleeve_lock"] = pref.resleeve_lock
|
||||
save_data["resleeve_scan"] = pref.resleeve_scan
|
||||
save_data["mind_scan"] = pref.mind_scan
|
||||
|
||||
/datum/category_item/player_setup_item/vore/resleeve/sanitize_character()
|
||||
pref.resleeve_lock = sanitize_integer(pref.resleeve_lock, 0, 1, initial(pref.resleeve_lock))
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
name = "Persistence"
|
||||
sort_order = 5
|
||||
|
||||
/datum/category_item/player_setup_item/vore/persistence/load_character(var/savefile/S)
|
||||
S["persistence_settings"] >> pref.persistence_settings
|
||||
/datum/category_item/player_setup_item/vore/persistence/load_character(list/save_data)
|
||||
pref.persistence_settings = save_data["persistence_settings"]
|
||||
sanitize_character() // Don't let new characters start off with nulls
|
||||
|
||||
/datum/category_item/player_setup_item/vore/persistence/save_character(var/savefile/S)
|
||||
S["persistence_settings"] << pref.persistence_settings
|
||||
/datum/category_item/player_setup_item/vore/persistence/save_character(list/save_data)
|
||||
save_data["persistence_settings"] = pref.persistence_settings
|
||||
|
||||
/datum/category_item/player_setup_item/vore/persistence/sanitize_character()
|
||||
pref.persistence_settings = sanitize_integer(pref.persistence_settings, 0, (1<<(PERSIST_COUNT+1)-1), initial(pref.persistence_settings))
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
name = "VS Events"
|
||||
sort_order = 6
|
||||
|
||||
/datum/category_item/player_setup_item/vore/vantag/load_character(var/savefile/S)
|
||||
S["vantag_volunteer"] >> pref.vantag_volunteer
|
||||
S["vantag_preference"] >> pref.vantag_preference
|
||||
/datum/category_item/player_setup_item/vore/vantag/load_character(list/save_data)
|
||||
pref.vantag_volunteer = save_data["vantag_volunteer"]
|
||||
pref.vantag_preference = save_data["vantag_preference"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/vantag/save_character(var/savefile/S)
|
||||
S["vantag_volunteer"] << pref.vantag_volunteer
|
||||
S["vantag_preference"] << pref.vantag_preference
|
||||
/datum/category_item/player_setup_item/vore/vantag/save_character(list/save_data)
|
||||
save_data["vantag_volunteer"] = pref.vantag_volunteer
|
||||
save_data["vantag_preference"] = pref.vantag_preference
|
||||
|
||||
/datum/category_item/player_setup_item/vore/vantag/sanitize_character()
|
||||
pref.vantag_volunteer = sanitize_integer(pref.vantag_volunteer, 0, 1, initial(pref.vantag_volunteer))
|
||||
|
||||
@@ -107,47 +107,47 @@ var/global/list/valid_bloodreagents = list("default","iron","copper","phoron","s
|
||||
name = "Traits"
|
||||
sort_order = 7
|
||||
|
||||
/datum/category_item/player_setup_item/vore/traits/load_character(var/savefile/S)
|
||||
S["custom_species"] >> pref.custom_species
|
||||
S["custom_base"] >> pref.custom_base
|
||||
S["pos_traits"] >> pref.pos_traits
|
||||
S["neu_traits"] >> pref.neu_traits
|
||||
S["neg_traits"] >> pref.neg_traits
|
||||
S["blood_color"] >> pref.blood_color
|
||||
S["blood_reagents"] >> pref.blood_reagents
|
||||
/datum/category_item/player_setup_item/vore/traits/load_character(list/save_data)
|
||||
pref.custom_species = save_data["custom_species"]
|
||||
pref.custom_base = save_data["custom_base"]
|
||||
pref.pos_traits = save_data["pos_traits"]
|
||||
pref.neu_traits = save_data["neu_traits"]
|
||||
pref.neg_traits = save_data["neg_traits"]
|
||||
pref.blood_color = save_data["blood_color"]
|
||||
pref.blood_reagents = save_data["blood_reagents"]
|
||||
|
||||
S["traits_cheating"] >> pref.traits_cheating
|
||||
S["max_traits"] >> pref.max_traits
|
||||
S["trait_points"] >> pref.starting_trait_points
|
||||
pref.traits_cheating = save_data["traits_cheating"]
|
||||
pref.max_traits = save_data["max_traits"]
|
||||
pref.starting_trait_points = save_data["trait_points"]
|
||||
|
||||
S["custom_say"] >> pref.custom_say
|
||||
S["custom_whisper"] >> pref.custom_whisper
|
||||
S["custom_ask"] >> pref.custom_ask
|
||||
S["custom_exclaim"] >> pref.custom_exclaim
|
||||
pref.custom_say = save_data["custom_say"]
|
||||
pref.custom_whisper = save_data["custom_whisper"]
|
||||
pref.custom_ask = save_data["custom_ask"]
|
||||
pref.custom_exclaim = save_data["custom_exclaim"]
|
||||
|
||||
S["custom_heat"] >> pref.custom_heat
|
||||
S["custom_cold"] >> pref.custom_cold
|
||||
pref.custom_heat = save_data["custom_heat"]
|
||||
pref.custom_cold = save_data["custom_cold"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/traits/save_character(var/savefile/S)
|
||||
S["custom_species"] << pref.custom_species
|
||||
S["custom_base"] << pref.custom_base
|
||||
S["pos_traits"] << pref.pos_traits
|
||||
S["neu_traits"] << pref.neu_traits
|
||||
S["neg_traits"] << pref.neg_traits
|
||||
S["blood_color"] << pref.blood_color
|
||||
S["blood_reagents"] << pref.blood_reagents
|
||||
/datum/category_item/player_setup_item/vore/traits/save_character(list/save_data)
|
||||
save_data["custom_species"] = pref.custom_species
|
||||
save_data["custom_base"] = pref.custom_base
|
||||
save_data["pos_traits"] = pref.pos_traits
|
||||
save_data["neu_traits"] = pref.neu_traits
|
||||
save_data["neg_traits"] = pref.neg_traits
|
||||
save_data["blood_color"] = pref.blood_color
|
||||
save_data["blood_reagents"] = pref.blood_reagents
|
||||
|
||||
S["traits_cheating"] << pref.traits_cheating
|
||||
S["max_traits"] << pref.max_traits
|
||||
S["trait_points"] << pref.starting_trait_points
|
||||
save_data["traits_cheating"] = pref.traits_cheating
|
||||
save_data["max_traits"] = pref.max_traits
|
||||
save_data["trait_points"] = pref.starting_trait_points
|
||||
|
||||
S["custom_say"] << pref.custom_say
|
||||
S["custom_whisper"] << pref.custom_whisper
|
||||
S["custom_ask"] << pref.custom_ask
|
||||
S["custom_exclaim"] << pref.custom_exclaim
|
||||
save_data["custom_say"] = pref.custom_say
|
||||
save_data["custom_whisper"] = pref.custom_whisper
|
||||
save_data["custom_ask"] = pref.custom_ask
|
||||
save_data["custom_exclaim"] = pref.custom_exclaim
|
||||
|
||||
S["custom_heat"] << pref.custom_heat
|
||||
S["custom_cold"] << pref.custom_cold
|
||||
save_data["custom_heat"] = pref.custom_heat
|
||||
save_data["custom_cold"] = pref.custom_cold
|
||||
|
||||
/datum/category_item/player_setup_item/vore/traits/sanitize_character()
|
||||
if(!pref.pos_traits) pref.pos_traits = list()
|
||||
|
||||
@@ -9,15 +9,15 @@
|
||||
name = "NIF Data"
|
||||
sort_order = 8
|
||||
|
||||
/datum/category_item/player_setup_item/vore/nif/load_character(var/savefile/S)
|
||||
S["nif_path"] >> pref.nif_path
|
||||
S["nif_durability"] >> pref.nif_durability
|
||||
S["nif_savedata"] >> pref.nif_savedata
|
||||
/datum/category_item/player_setup_item/vore/nif/load_character(list/save_data)
|
||||
pref.nif_path = save_data["nif_path"]
|
||||
pref.nif_durability = save_data["nif_durability"]
|
||||
pref.nif_savedata = save_data["nif_savedata"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/nif/save_character(var/savefile/S)
|
||||
S["nif_path"] << pref.nif_path
|
||||
S["nif_durability"] << pref.nif_durability
|
||||
S["nif_savedata"] << pref.nif_savedata
|
||||
/datum/category_item/player_setup_item/vore/nif/save_character(list/save_data)
|
||||
save_data["nif_path"] = pref.nif_path
|
||||
save_data["nif_durability"] = pref.nif_durability
|
||||
save_data["nif_savedata"] = pref.nif_savedata
|
||||
|
||||
/datum/category_item/player_setup_item/vore/nif/sanitize_character()
|
||||
if(pref.nif_path && !ispath(pref.nif_path)) //We have at least a text string that should be a path.
|
||||
|
||||
@@ -2,27 +2,27 @@
|
||||
name = "Misc Settings"
|
||||
sort_order = 9
|
||||
|
||||
/datum/category_item/player_setup_item/vore/misc/load_character(var/savefile/S)
|
||||
S["show_in_directory"] >> pref.show_in_directory
|
||||
S["directory_tag"] >> pref.directory_tag
|
||||
S["directory_erptag"] >> pref.directory_erptag
|
||||
S["directory_ad"] >> pref.directory_ad
|
||||
S["sensorpref"] >> pref.sensorpref
|
||||
S["capture_crystal"] >> pref.capture_crystal
|
||||
S["auto_backup_implant"] >> pref.auto_backup_implant
|
||||
S["borg_petting"] >> pref.borg_petting
|
||||
S["stomach_vision"] >> pref.stomach_vision
|
||||
/datum/category_item/player_setup_item/vore/misc/load_character(list/save_data)
|
||||
pref.show_in_directory = save_data["show_in_directory"]
|
||||
pref.directory_tag = save_data["directory_tag"]
|
||||
pref.directory_erptag = save_data["directory_erptag"]
|
||||
pref.directory_ad = save_data["directory_ad"]
|
||||
pref.sensorpref = save_data["sensorpref"]
|
||||
pref.capture_crystal = save_data["capture_crystal"]
|
||||
pref.auto_backup_implant = save_data["auto_backup_implant"]
|
||||
pref.borg_petting = save_data["borg_petting"]
|
||||
pref.stomach_vision = save_data["stomach_vision"]
|
||||
|
||||
/datum/category_item/player_setup_item/vore/misc/save_character(var/savefile/S)
|
||||
S["show_in_directory"] << pref.show_in_directory
|
||||
S["directory_tag"] << pref.directory_tag
|
||||
S["directory_erptag"] << pref.directory_erptag
|
||||
S["directory_ad"] << pref.directory_ad
|
||||
S["sensorpref"] << pref.sensorpref
|
||||
S["capture_crystal"] << pref.capture_crystal
|
||||
S["auto_backup_implant"] << pref.auto_backup_implant
|
||||
S["borg_petting"] << pref.borg_petting
|
||||
S["stomach_vision"] << pref.stomach_vision
|
||||
/datum/category_item/player_setup_item/vore/misc/save_character(list/save_data)
|
||||
save_data["show_in_directory"] = pref.show_in_directory
|
||||
save_data["directory_tag"] = pref.directory_tag
|
||||
save_data["directory_erptag"] = pref.directory_erptag
|
||||
save_data["directory_ad"] = pref.directory_ad
|
||||
save_data["sensorpref"] = pref.sensorpref
|
||||
save_data["capture_crystal"] = pref.capture_crystal
|
||||
save_data["auto_backup_implant"] = pref.auto_backup_implant
|
||||
save_data["borg_petting"] = pref.borg_petting
|
||||
save_data["stomach_vision"] = pref.stomach_vision
|
||||
|
||||
/datum/category_item/player_setup_item/vore/misc/copy_to_mob(var/mob/living/carbon/human/character)
|
||||
if(pref.sensorpref > 5 || pref.sensorpref < 1)
|
||||
|
||||
Reference in New Issue
Block a user