diff --git a/code/_helpers/text.dm b/code/_helpers/text.dm index d84cde3cd1e..8cc30a468d1 100644 --- a/code/_helpers/text.dm +++ b/code/_helpers/text.dm @@ -450,3 +450,17 @@ proc/TextPreview(var/string,var/len=40) t = replacetext(t, "\[date\]", "[worlddate2text()]") t = replacetext(t, "\[editorbr\]", "
") return t + +/proc/html2pencode(t) + t = replacetext(t, "", "\[b\]") + t = replacetext(t, "", "\[/b\]") + t = replacetext(t, "", "\[i\]") + t = replacetext(t, "", "\[/i\]") + t = replacetext(t, "", "\[u\]") + t = replacetext(t, "", "\[/u\]") + t = replacetext(t, "", "\[large\]") + t = replacetext(t, "", "\[/large\]") + t = replacetext(t, "", "\[small\]") + t = replacetext(t, "", "\[/small\]") + + return t diff --git a/code/modules/client/preference_setup/general/06_flavor.dm b/code/modules/client/preference_setup/general/06_flavor.dm index a3bf412e6e0..a16656066d3 100644 --- a/code/modules/client/preference_setup/general/06_flavor.dm +++ b/code/modules/client/preference_setup/general/06_flavor.dm @@ -93,8 +93,8 @@ ":flavour_legs" = pref.flavor_texts["legs"], ":flavour_feet" = pref.flavor_texts["feet"], ":robot_default" = pref.flavour_texts_robot["default"], - ":signature" = pref.signature, - ":signature_font" = pref.signfont) + ":signature_font" = pref.signfont, + ":signature" = pref.signature) for (var/module in robot_module_types) var_list[":robot_[module]"] += pref.flavour_texts_robot[module] @@ -115,7 +115,8 @@ . += "Signature: [pref.signature]
" . += "Edit Text | " . += "Edit Font | " - . += "Help
" + . += "Help | " + . += "Reset
" /datum/category_item/player_setup_item/general/flavor/OnTopic(var/href,var/list/href_list, var/mob/user) if(href_list["flavor_text"]) @@ -149,7 +150,7 @@ else if (href_list["edit_signature"]) switch (href_list["edit_signature"]) if ("text") - var/new_sign = input(usr, "Please input the new character signature.", "New signature", pref.signature) as null|text + var/new_sign = input(usr, "Please input the new character signature.", "New signature", html2pencode(pref.signature)) as null|text if (!new_sign) to_chat(usr, span("notice", "Cancelled.")) if (pref.signature) @@ -187,6 +188,11 @@ show_browser(usr, html, "window=signaturehelp;size=350x300") return TOPIC_HANDLED + if ("reset") + to_chat(usr, span("notice", "Signature reset.")) + pref.signfont = "Verdana" + pref.signature = "[pref.real_name]" + return TOPIC_REFRESH return ..()