diff --git a/code/modules/client/preference_setup/general/02_language.dm b/code/modules/client/preference_setup/general/02_language.dm index 0481affd17..673e273af0 100644 --- a/code/modules/client/preference_setup/general/02_language.dm +++ b/code/modules/client/preference_setup/general/02_language.dm @@ -1,6 +1,7 @@ /datum/category_item/player_setup_item/general/language name = "Language" 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 @@ -18,6 +19,9 @@ pref.alternate_languages.len = S.num_alternate_languages // Truncate to allowed length if(isnull(pref.language_prefixes) || !pref.language_prefixes.len) pref.language_prefixes = config.language_prefixes.Copy() + for(var/prefix in pref.language_prefixes) + if(prefix in forbidden_prefixes) + pref.language_prefixes -= prefix /datum/category_item/player_setup_item/general/language/content() . += "Languages
" @@ -79,7 +83,7 @@ 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("!","*", "^")) + 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")