mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-09 16:07:40 +00:00
muh immursion
This commit is contained in:
@@ -414,3 +414,20 @@
|
|||||||
continue
|
continue
|
||||||
runnable_modes[M] = probabilities[M.config_tag]
|
runnable_modes[M] = probabilities[M.config_tag]
|
||||||
return runnable_modes
|
return runnable_modes
|
||||||
|
|
||||||
|
/datum/controller/configuration/proc/LoadChatFilter()
|
||||||
|
var/list/in_character_filter = list()
|
||||||
|
|
||||||
|
if(!fexists("[directory]/in_character_filter.txt"))
|
||||||
|
return
|
||||||
|
log_config("Loading config file in_character_filter.txt...")
|
||||||
|
for(var/line in world.file2list("[directory]/in_character_filter.txt"))
|
||||||
|
if(!line)
|
||||||
|
continue
|
||||||
|
if(findtextEx(line,"#",1,2))
|
||||||
|
continue
|
||||||
|
in_character_filter += REGEX_QUOTE(line)
|
||||||
|
|
||||||
|
ic_filter_regex = in_character_filter.len ? regex("\\b([jointext(in_character_filter, "|")])\\b", "i") : null
|
||||||
|
|
||||||
|
syncChatRegexes()
|
||||||
|
|||||||
@@ -88,11 +88,21 @@ GLOBAL_LIST_INIT(department_radio_keys, list(
|
|||||||
|
|
||||||
var/static/list/one_character_prefix = list(MODE_HEADSET = TRUE, MODE_ROBOT = TRUE, MODE_WHISPER = TRUE)
|
var/static/list/one_character_prefix = list(MODE_HEADSET = TRUE, MODE_ROBOT = TRUE, MODE_WHISPER = TRUE)
|
||||||
|
|
||||||
|
var/ic_blocked = FALSE
|
||||||
|
if(client && !forced && config.ic_filter_regex && findtext(message, config.ic_filter_regex))
|
||||||
|
//The filter doesn't act on the sanitized message, but the raw message.
|
||||||
|
ic_blocked = TRUE
|
||||||
|
|
||||||
if(sanitize)
|
if(sanitize)
|
||||||
message = trim(copytext_char(sanitize(message), 1, MAX_MESSAGE_LEN))
|
message = trim(copytext_char(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||||
if(!message || message == "")
|
if(!message || message == "")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
if(ic_blocked)
|
||||||
|
//The filter warning message shows the sanitized message though.
|
||||||
|
to_chat(src, "<span class='warning'>That message contained a word prohibited in IC chat! Consider reviewing the server rules.\n<span replaceRegex='show_filtered_ic_chat'>\"[message]\"</span></span>")
|
||||||
|
return
|
||||||
|
|
||||||
var/datum/saymode/saymode = SSradio.saymodes[talk_key]
|
var/datum/saymode/saymode = SSradio.saymodes[talk_key]
|
||||||
var/message_mode = get_message_mode(message)
|
var/message_mode = get_message_mode(message)
|
||||||
var/original_message = message
|
var/original_message = message
|
||||||
|
|||||||
7
config/in_character_filter.txt
Normal file
7
config/in_character_filter.txt
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
###############################################################################################
|
||||||
|
# Words that will block in character chat messages from sending. #
|
||||||
|
# Case is not important. Commented-out examples are listed below, just remove the "#". #
|
||||||
|
###############################################################################################
|
||||||
|
#lol
|
||||||
|
#omg
|
||||||
|
#wtf
|
||||||
Reference in New Issue
Block a user