Code: Select all
//TSs's Multi-Titler
// Say "/1title1 bananas" to set the title to "bananas"
// For the color you could say "/1title1 setcolor <255,255,0>" or since yellow is in the presets you culd say "/1title1 setcolor yellow"
// to toggle it on and off say "/1title1 toggleit"
//to clear the text say "/1title1 clear" or simply "/1title1" without anything after the name
string mynameis = "title1"; //caps doesn't matter, to use more than one titler at once put this script on another prim and change its name
integer HelpOnStartup = TRUE; // change TRUE to FALSE if you don't want it to provide the help info when it starts
list colors = [ "red", 255, 0, 0,
"green", 0, 255, 0,
"blue" , 0, 0, 255,
"orange" , 255, 128, 0,
"pink" , 255, 0 , 128 ,
"purple" , 255 , 0 , 255,
"yellow", 255, 255, 0,
"cyan", 0, 255, 255 ,
"white", 255, 255, 255
];
//////////////////////////////////////
/////end of customization section/////
//////////////////////////////////////
//THIS SCRIPT SHOULD NEVER BE PUT FOR SALE OR PACKED WITH SOMTHIGN THAT IS GONNA BE SOLD, AND MUST ALWAYS REMAIN +MOD, IF YOU WANT USE SOME OF THE
//CODE HERE IN A COMERCIAL PRODUCT LOOK THE CODE UP ON THE WIKI (and if possible give TigroSpottystripes some of the money you made sellign it ;)
string text;
vector color = <1,1,1>;
setColor(string command)
{
color = <1,1,1>;
list bits = llParseString2List(command, ["setcolor"],[]);
integer index = llListFindList(colors,llCSV2List(llList2String(bits,1)));
if ( index > -1)
{
list thiscolor = llList2List(colors,index+1, index+4);
color = <llList2Float(thiscolor,0), llList2Float(thiscolor,1), llList2Float(thiscolor,2)>/255;
}
else
{
list thiscolor = llParseString2List(command, ["<", ","],[]);
color = <llList2Float(thiscolor,1), llList2Float(thiscolor,2), llList2Float(thiscolor,3)>/255;
}
llSetText(text,color, 1);
}
setText(string command)
{
list bits = llParseString2List(command, [" "],[]);
text = llDumpList2String(llList2List(bits,1, llGetListLength(bits)), " ");
text = llDumpList2String(llParseString2List(text, ["\\n"],[]), "\n");
llSetText(text,color, 1);
}
clearText()
{
text = "";
llSetText(text,color, 1);
}
toggleText()
{
toggle = !toggle;
llSetText(llList2String(["", text],toggle), color, 1);
}
integer lishan;
integer toggle = TRUE;
default
{
state_entry()
{
lishan = llListen(1,"",llGetOwner(),"");
}
on_rez(integer param)
{
llWhisper(0,"/me : TSs's Multi-Titler started\nget a free copy at http://lslwiki.net/lslwiki/wakka.php?wakka=LibraryMultiTitler");
if(HelpOnStartup)
llWhisper(0, "/me : Lost me? Just turn on \"Highlight Transparent\" on the view menu. I'm a small cube, probably above your head. :) \n
Say \"/1title1 bananas\" to set the title to \"bananas\"\n
For the color, you could say \"/1title1 setcolor <255,255,0>\" or since yellow is in the presets, you could say \"/1title1 setcolor yellow\"\n
To toggle it on and off say \"/1title1 toggleit\"\n
To clear the text say \"/1title1 clearit\" or simply \"/1title1\" without anything after the name");
}
changed (integer change)
{
if (change & CHANGED_OWNER)
{
llListenRemove(lishan);
lishan = llListen(1,"",llGetOwner(),"");
}
}
listen(integer chan, string name, key id, string msg)
{
list messie = llParseString2List(msg, [" "],[]);
if (llToLower(llList2String(messie,0)) == llToLower(mynameis))
{
//list breakdown = llParseString2List(
if (llToLower(llList2String(messie,1)) == "setcolor")
{
setColor(msg);
}
else if(llToLower(llList2String(messie,1)) == "clearit")
{
clearText();
}
else if(llToLower(llList2String(messie,1)) == "toggleit")
{
toggleText();
}
else
{
setText(msg);
}
}
}
}