I've made this script which will filter
all messages (both sent and received). To add words to the list, you will need to edit the array at the top. You can have as many or as little filtered words as you want.
code:
// Add words that you want censored to the wf_FilteredWords array.
// Enclose the words with quotation marks (") and separate each word with a comma (,).
var wf_FilteredWords = new Array("FilteredWord0", "FilteredWord1", "FilteredWord2");
function OnEvent_ChatWndReceiveMessage(ChatWnd, Origin, Message, MessageKind) {
var wf_FilteredMessage = Message;
Debug.Trace("Filtered message defined.")
for(i = 0; i < wf_FilteredWords.length; i++) {
while(wf_FilteredMessage.toLowerCase().search(wf_FilteredWords[i].toLowerCase()) != -1) {
Debug.Trace("Filtered word found.")
var wf_IndexArray = new Array(wf_FilteredMessage.toLowerCase().search(wf_FilteredWords[i].toLowerCase()), wf_FilteredMessage.toLowerCase().search(wf_FilteredWords[i].toLowerCase()) + wf_FilteredWords[i].length);
var wf_ReplacedStars = "";
for(j = 0; j < wf_FilteredWords[i].length; j++) {
wf_ReplacedStars += "*";
}
Debug.Trace("Star replacement created.")
var wf_Temp = wf_FilteredMessage.substring(0, wf_IndexArray[0]) + wf_ReplacedStars + wf_FilteredMessage.substr(wf_IndexArray[1]);
wf_FilteredMessage = wf_Temp;
Debug.Trace("Filtered word censored.")
}
}
Debug.Trace("All filtered words censored.")
return wf_FilteredMessage;
Debug.Trace("Filtered message sent.")
}