diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index e0714a87b3..e62bcc6738 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -216,6 +216,7 @@ "ipc_screen" = snowflake_ipc_antenna_list ? pick(snowflake_ipc_antenna_list) : "None", "ipc_antenna" = "None", "flavor_text" = "", + "silicon_flavor_text" = "", "meat_type" = "Mammalian", "body_model" = body_model, "body_size" = RESIZE_DEFAULT_SIZE diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index ec3656f007..c0ac79e449 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -154,6 +154,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) "ipc_screen" = "Sunburst", "ipc_antenna" = "None", "flavor_text" = "", + "silicon_flavor_text" = "", "ooc_notes" = "", "meat_type" = "Mammalian", "body_model" = MALE, @@ -367,6 +368,15 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "[features["flavor_text"]]" else dat += "[TextPreview(features["flavor_text"])]...
" + dat += "

Silicon Flavor Text

" + dat += "Set Silicon Examine Text
" + if(length(features["silicon_flavor_text"]) <= 40) + if(!length(features["silicon_flavor_text"])) + dat += "\[...\]" + else + dat += "[features["silicon_flavor_text"]]" + else + dat += "[TextPreview(features["silicon_flavor_text"])]...
" dat += "

OOC notes

" dat += "Set OOC notes
" var/ooc_notes_len = length(features["ooc_notes"]) @@ -1615,6 +1625,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/msg = stripped_multiline_input(usr, "Set the flavor text in your 'examine' verb. This can also be used for OOC notes and preferences!", "Flavor Text", features["flavor_text"], MAX_FLAVOR_LEN, TRUE) if(!isnull(msg)) features["flavor_text"] = html_decode(msg) + + if("silicon_flavor_text") + var/msg = stripped_multiline_input(usr, "Set the silicon flavor text in your 'examine' verb. This can also be used for OOC notes and preferences!", "Silicon Flavor Text", features["silicon_flavor_text"], MAX_FLAVOR_LEN, TRUE) + if(!isnull(msg)) + features["silicon_flavor_text"] = html_decode(msg) if("ooc_notes") var/msg = stripped_multiline_input(usr, "Set always-visible OOC notes related to content preferences. THIS IS NOT FOR CHARACTER DESCRIPTIONS!", "OOC notes", features["ooc_notes"], MAX_FLAVOR_LEN, TRUE) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index a2da5d1ae2..c173dfa625 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -552,8 +552,12 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car else //We have no old flavortext, default to new S["feature_flavor_text"] >> features["flavor_text"] + + + S["silicon_feature_flavor_text"] >> features["silicon_flavor_text"] S["feature_ooc_notes"] >> features["ooc_notes"] + S["silicon_flavor_text"] >> features["silicon_flavor_text"] S["vore_flags"] >> vore_flags S["vore_taste"] >> vore_taste @@ -678,6 +682,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["flavor_text"] = copytext(features["flavor_text"], 1, MAX_FLAVOR_LEN) + features["silicon_flavor_text"] = copytext(features["silicon_flavor_text"], 1, MAX_FLAVOR_LEN) features["ooc_notes"] = copytext(features["ooc_notes"], 1, MAX_FLAVOR_LEN) joblessrole = sanitize_integer(joblessrole, 1, 3, initial(joblessrole)) diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 0d0f7f9c97..173db6f69b 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -56,6 +56,12 @@ diag_hud_set_status() diag_hud_set_health() +/mob/living/silicon/ComponentInitialize() + . = ..() + AddElement(/datum/element/flavor_text, _name = "Silicon Flavor Text", _save_key = "silicon_flavor_text") + AddElement(/datum/element/flavor_text, "", "Temporary Flavor Text", "This should be used only for things pertaining to the current round!") + AddElement(/datum/element/flavor_text, _name = "OOC Notes", _addendum = "Put information on ERP/vore/lewd-related preferences here. THIS SHOULD NOT CONTAIN REGULAR FLAVORTEXT!!", _always_show = TRUE, _save_key = "ooc_notes", _examine_no_preview = TRUE) + /mob/living/silicon/med_hud_set_health() return //we use a different hud diff --git a/modular_citadel/code/modules/client/preferences_savefile.dm b/modular_citadel/code/modules/client/preferences_savefile.dm index d0363d228f..c747c4cf32 100644 --- a/modular_citadel/code/modules/client/preferences_savefile.dm +++ b/modular_citadel/code/modules/client/preferences_savefile.dm @@ -35,4 +35,5 @@ WRITE_FILE(S["feature_xeno_head"], features["xenohead"]) //flavor text WRITE_FILE(S["feature_flavor_text"], features["flavor_text"]) + WRITE_FILE(S["silicon_feature_flavor_text"], features["silicon_flavor_text"])