Dialog Message

From Second Life Wiki
Jump to navigation Jump to search

A simple script thats lets anyone say a messages over a dialog instead of using llSay or llShout.

Usage: /channel dialog message

• integer channel channel number the script is listening on
• string message message to display
integer channel = 1000;

string token;
string data;

default
{
    state_entry()
    {
        llListen(channel, "", "", "");
    }
    
    on_rez(integer start_param)
    {
        llResetScript();
    }
        
    sensor(integer num_detected)
    { 
        if(token == "dialog")
        {
            integer i = 0;
            for(; i < num_detected; ++i)
                llDialog(llDetectedKey(i), data, [], channel );
        }
    }
    
    listen(integer chan, string name, key id, string command)
    {
        integer s = llSubStringIndex(command," ");
        if (~s)
        {
            token = llDeleteSubString(command, s, -1);
            data = llDeleteSubString(command, 0, s);
            if(token == "dialog")
                llSensor( "", "", AGENT, 32, PI );
        }
    }
}