Shoutbox

changing words in sent text? - Printable Version

-Shoutbox (https://shoutbox.menthix.net)
+-- Forum: MsgHelp Archive (/forumdisplay.php?fid=58)
+--- Forum: Messenger Plus! for Live Messenger (/forumdisplay.php?fid=4)
+---- Forum: Scripting (/forumdisplay.php?fid=39)
+----- Thread: changing words in sent text? (/showthread.php?tid=94568)

changing words in sent text? by moon_lit_shadow on 05-11-2010 at 07:51 PM

I'm working on a very small script to try to replace words in a sentence (for testing purposes) and I'm unsure exactly how to do this. I was wondering if perhaps someone could tell me what i'm doing wrong?
I'm native to C++, so Javascript is not too difficult to understand, it's just the MsgPlus! syntax which I am uncertain of.

my code so far:

code:
function OnEvent_ChatWndSendMessage(ChatWnd, Message)
{
    var split_message = Message.split(' ');
    for(var i=0; i>=split_message.length; i=i+1)
    {
        split_message[i] = "word ";
    }
}


Anyone able to help?

EDIT:
Oh yeah, my question is just how to return the array of the message that is going to be sent to be the new output message. Sort of like the word replace feature. (I'm changing all the words at the moment with the for loop/array, but in the end i intend to use a switch/case branch. It's just to test things for now to get the hang of it)
RE: changing words in sent text? by Chrissy on 05-11-2010 at 10:29 PM

Changing a message being sent:

You can return a message from the ChatWndSendMessage function and it will change the message before it is sent. If you don't return a message, the intercepted message will be sent.

The following code will replace all instances of hi with test.

code:
function OnEvent_ChatWndSendMessage(ChatWnd, sMessage)
{
   return sMessage.replace("hi", "test");
}

(ChrisBoulton)
RE: changing words in sent text? by Spunky on 05-12-2010 at 05:21 AM

quote:
Originally posted by Chrissy
The following code will replace all instances of hi with test.

No, It'll replace one instance. For all instances you would have to use a RegExp with the g modifier

js code:
function OnEvent_ChatWndSendMessage(ChatWnd, Message){
   return Message.replace(/hi/gi, "test");
}

g = global
i = case insensitive
Anything between the slashes (/) are the RexExp to look for. Special characters can also be used here to denote certain things.