diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index 541b3d56..87b68a92 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -510,7 +510,7 @@ var/jobtext = "" if(ply.assigned_role) jobtext = " the [ply.assigned_role]" - var/text = "[ply.key] was [ply.name][jobtext] and" + var/text = "[ply.hide_ckey ? "[ply.name][jobtext] " : "[ply.key] was [ply.name][jobtext] and "]" if(ply.current) if(ply.current.stat == DEAD) text += " died" diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 3b549958..0e4e9319 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -41,6 +41,8 @@ var/special_role var/list/restricted_roles = list() + var/hide_ckey = FALSE + var/list/datum/objective/objectives = list() var/list/spell_list = list() // Wizard mode & "Give Spell" badmin button. @@ -134,6 +136,8 @@ L.canbearoused = L.client.prefs.arousable //Technically this should make taking over a character mean the body gain the new minds setting... L.update_arousal_hud() //Removes the old icon + hide_ckey = current.client?.prefs?.hide_ckey + /datum/mind/proc/store_memory(new_text) if((length_char(memory) + length_char(new_text)) <= MAX_MESSAGE_LEN) memory += "[new_text]
" @@ -853,6 +857,7 @@ if(!mind.name) mind.name = real_name mind.current = src + mind.hide_ckey = client?.prefs?.hide_ckey /mob/living/carbon/mind_initialize() ..() diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 2a5bc386..114f2416 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -240,6 +240,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/list/bgstate_options = list("000", "midgrey", "hiro", "FFF", "white", "steel", "techmaint", "dark", "plating", "reinforced") var/show_mismatched_markings = FALSE //determines whether or not the markings lists should show markings that don't match the currently selected species. Intentionally left unsaved. + var/hide_ckey = FALSE //pref for hiding if your ckey shows round-end or not /datum/preferences/New(client/C) parent = C @@ -368,6 +369,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "[medical_records]" else dat += "[TextPreview(medical_records)]...
" + dat += "
Hide ckey: [hide_ckey ? "Enabled" : "Disabled"]
" dat += "" //Character Appearance @@ -1689,6 +1691,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) msg = msg features["flavor_text"] = msg + if("hide_ckey") + hide_ckey = !hide_ckey + if(user) + user.mind?.hide_ckey = hide_ckey + if("hair") var/new_hair = input(user, "Choose your character's hair colour:", "Character Preference","#"+hair_color) as color|null if(new_hair) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 9ad29dee..1b33e6cb 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -337,7 +337,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_human_ears"] >> features["ears"] S["feature_deco_wings"] >> features["deco_wings"] - + S["hide_ckey"] >> hide_ckey //saved per-character //Custom names @@ -591,6 +591,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //Record Flavor Text WRITE_FILE(S["security_records"] , security_records) WRITE_FILE(S["medical_records"] , medical_records) + //hide c-key + WRITE_FILE(S["hide_ckey"] , hide_ckey) //Quirks WRITE_FILE(S["all_quirks"] , all_quirks) diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm index 4c39d51d..e3af2080 100644 --- a/code/modules/mob/login.dm +++ b/code/modules/mob/login.dm @@ -52,4 +52,5 @@ var/datum/callback/CB = foo CB.Invoke() + mind?.hide_ckey = client?.prefs?.hide_ckey log_message("Client [key_name(src)] has taken ownership of mob [src]([src.type])", LOG_OWNERSHIP)