mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 04:51:32 +01:00
Transfers language shortcut keys from per character setting to a global one.
This commit is contained in:
@@ -4,16 +4,12 @@
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/load_character(var/savefile/S)
|
||||
S["language"] >> pref.alternate_languages
|
||||
S["language_prefixes"] >> pref.language_prefixes
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/save_character(var/savefile/S)
|
||||
S["language"] << pref.alternate_languages
|
||||
S["language_prefixes"] << pref.language_prefixes
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/sanitize_character()
|
||||
if(!islist(pref.alternate_languages)) pref.alternate_languages = list()
|
||||
if(isnull(pref.language_prefixes) || !pref.language_prefixes.len)
|
||||
pref.language_prefixes = config.language_prefixes.Copy()
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/content()
|
||||
. += "<b>Languages</b><br>"
|
||||
@@ -33,9 +29,6 @@
|
||||
else
|
||||
. += "- [pref.species] cannot choose secondary languages.<br>"
|
||||
|
||||
. += "<b>Language Keys</b><br>"
|
||||
. += " [english_list(pref.language_prefixes, and_text = " ", comma_text = " ")] <a href='?src=\ref[src];change_prefix=1'>Change</a> <a href='?src=\ref[src];reset_prefix=1'>Reset</a><br>"
|
||||
|
||||
/datum/category_item/player_setup_item/general/language/OnTopic(var/href,var/list/href_list, var/mob/user)
|
||||
if(href_list["remove_language"])
|
||||
var/index = text2num(href_list["remove_language"])
|
||||
@@ -64,30 +57,4 @@
|
||||
if(new_lang)
|
||||
pref.alternate_languages |= new_lang
|
||||
return TOPIC_REFRESH
|
||||
|
||||
else if(href_list["change_prefix"])
|
||||
var/char
|
||||
var/keys[0]
|
||||
do
|
||||
char = input("Enter a single special character.\nYou may re-select the same characters.\nThe following characters are already in use by radio: ; : .\nThe following characters are already in use by special say commands: ! * ^", "Enter Character - [3 - keys.len] remaining") as null|text
|
||||
if(char)
|
||||
if(length(char) > 1)
|
||||
alert(user, "Only single characters allowed.", "Error", "Ok")
|
||||
else if(char in list(";", ":", "."))
|
||||
alert(user, "Radio character. Rejected.", "Error", "Ok")
|
||||
else if(char in list("!","*", "^"))
|
||||
alert(user, "Say character. Rejected.", "Error", "Ok")
|
||||
else if(contains_az09(char))
|
||||
alert(user, "Non-special character. Rejected.", "Error", "Ok")
|
||||
else
|
||||
keys.Add(char)
|
||||
while(char && keys.len < 3)
|
||||
|
||||
if(keys.len == 3)
|
||||
pref.language_prefixes = keys
|
||||
return TOPIC_REFRESH
|
||||
else if(href_list["reset_prefix"])
|
||||
pref.language_prefixes = config.language_prefixes.Copy()
|
||||
return TOPIC_REFRESH
|
||||
|
||||
return ..()
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
pref.ooccolor = sanitize_hexcolor(pref.ooccolor, initial(pref.ooccolor))
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/ui/content(var/mob/user)
|
||||
. = "<b>UI Style:</b> <a href='?src=\ref[src];select_style=1'><b>[pref.UI_style]</b></a><br>"
|
||||
. += "<b>UI Settings</b><br>"
|
||||
. += "<b>UI Style:</b> <a href='?src=\ref[src];select_style=1'><b>[pref.UI_style]</b></a><br>"
|
||||
. += "<b>Custom UI</b> (recommended for White UI):<br>"
|
||||
. += "-Color: <a href='?src=\ref[src];select_color=1'><b>[pref.UI_style_color]</b></a> <table style='display:inline;' bgcolor='[pref.UI_style_color]'><tr><td>__</td></tr></table> <a href='?src=\ref[src];reset=ui'>reset</a><br>"
|
||||
. += "-Alpha(transparency): <a href='?src=\ref[src];select_alpha=1'><b>[pref.UI_style_alpha]</b></a> <a href='?src=\ref[src];reset=alpha'>reset</a><br>"
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
/datum/category_item/player_setup_item/player_global/language
|
||||
name = "Language"
|
||||
sort_order = 3
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/load_preferences(var/savefile/S)
|
||||
S["language_prefixes"] >> pref.language_prefixes
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/save_preferences(var/savefile/S)
|
||||
S["language_prefixes"] << pref.language_prefixes
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/sanitize_preferences()
|
||||
if(isnull(pref.language_prefixes) || !pref.language_prefixes.len)
|
||||
pref.language_prefixes = config.language_prefixes.Copy()
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/content(var/mob/user)
|
||||
. += "<b>Language Keys</b><br>"
|
||||
. += " [english_list(pref.language_prefixes, and_text = " ", comma_text = " ")] <a href='?src=\ref[src];change_prefix=1'>Change</a> <a href='?src=\ref[src];reset_prefix=1'>Reset</a><br>"
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/OnTopic(var/href,var/list/href_list, var/mob/user)
|
||||
if(href_list["change_prefix"])
|
||||
var/char
|
||||
var/keys[0]
|
||||
do
|
||||
char = input("Enter a single special character.\nYou may re-select the same characters.\nThe following characters are already in use by radio: ; : .\nThe following characters are already in use by special say commands: ! * ^", "Enter Character - [3 - keys.len] remaining") as null|text
|
||||
if(char)
|
||||
if(length(char) > 1)
|
||||
alert(user, "Only single characters allowed.", "Error", "Ok")
|
||||
else if(char in list(";", ":", "."))
|
||||
alert(user, "Radio character. Rejected.", "Error", "Ok")
|
||||
else if(char in list("!","*", "^"))
|
||||
alert(user, "Say character. Rejected.", "Error", "Ok")
|
||||
else if(contains_az09(char))
|
||||
alert(user, "Non-special character. Rejected.", "Error", "Ok")
|
||||
else
|
||||
keys.Add(char)
|
||||
while(char && keys.len < 3)
|
||||
|
||||
if(keys.len == 3)
|
||||
pref.language_prefixes = keys
|
||||
return TOPIC_REFRESH
|
||||
|
||||
else if(href_list["reset_prefix"])
|
||||
pref.language_prefixes = config.language_prefixes.Copy()
|
||||
return TOPIC_REFRESH
|
||||
|
||||
return ..()
|
||||
|
||||
|
||||
/datum/category_item/player_setup_item/player_global/language/update_setup(var/savefile/preferences, var/savefile/character)
|
||||
if(preferences["version"] == 11)
|
||||
var/list/prefixes = character["language_prefixes"]
|
||||
if(istype(prefixes) && prefixes.len)
|
||||
preferences["language_prefixes"] = prefixes.Copy()
|
||||
return 1
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/datum/category_item/player_setup_item/player_global/pai
|
||||
name = "pAI"
|
||||
sort_order = 3
|
||||
sort_order = 4
|
||||
|
||||
var/datum/paiCandidate/candidate
|
||||
|
||||
Reference in New Issue
Block a user