|
|
| Line 1: |
Line 1: |
| //Advanced hovertext script by ZachSmith Resident
| |
| //This is a very useful and easy to use advanced hovertext script.
| |
| //Hopefully you can use this script or maybe even have it help you to better learn scripting.
| |
|
| |
|
| //global variables
| |
| string Htext;
| |
| vector red = <1,0,0>;
| |
| vector green = <0,1,0>;
| |
| vector blue = <0,0,1>;
| |
| vector white = <1,1,1>;
| |
| vector grey = <.5,.5,.5>;
| |
| vector black = <0,0,0>;
| |
| vector yellow = <1,1,0>;
| |
| vector cyan = <0,1,1>;
| |
| vector magenta = <1,0,1>;
| |
| vector cur_color;
| |
|
| |
| //premade function for saying the help text
| |
| llHelp()
| |
| {
| |
| llSay(0, "All commands are said in local chat\nChat commands:\n 'help'\n'text color red'\n'text color green'\n'text color blue'\n'text color white'\n'text color grey'\n'text color black'\n'text color yellow'\n'text color cyan'\n'text color magenta'\n'text on'\n'text off'\n'text set'");
| |
| }
| |
|
| |
| default
| |
| {
| |
| on_rez(integer start_params)
| |
| {
| |
| //when this item enters world say the help text
| |
| llHelp();
| |
| }
| |
| state_entry()
| |
| {
| |
| //Set cur_color to white, text to default and turn the listen on
| |
| cur_color = white;
| |
| Htext = "Hello, Avatar!";
| |
| llListen(0, "", llGetOwner(), "");
| |
| //set the text on the prim to current text and color
| |
| llSetText(Htext,cur_color, 1);
| |
| }
| |
| listen(integer channel, string name, key id, string message)
| |
| {
| |
| if(message == "text on")
| |
| {
| |
| //narrow scope and filter for only the proper chat commands.
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text off")
| |
| {
| |
| //narrow scope and filter for only the proper chat commands.
| |
| llSetText(Htext,cur_color, 0);
| |
| //set the text on the prim to current text and color but set the alpha so it is not seen
| |
| }
| |
| else if(message == "text color red")
| |
| {
| |
| cur_color = red;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color green")
| |
| {
| |
| cur_color = green;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color blue")
| |
| {
| |
| cur_color = blue;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color white")
| |
| {
| |
| cur_color = white;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color grey")
| |
| {
| |
| cur_color = grey;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color black")
| |
| {
| |
| cur_color = black;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color yellow")
| |
| {
| |
| cur_color = yellow;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color cyan")
| |
| {
| |
| cur_color = cyan;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "text color magenta")
| |
| {
| |
| cur_color = magenta;
| |
| //set new cur_color
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| }
| |
| else if(message == "help")
| |
| {
| |
| llHelp();
| |
| //say help message
| |
| }
| |
| else if(message == "text set")
| |
| {
| |
| llListen(7, "", llGetOwner(), "");
| |
| //listen on channel 7 so that you can hear the new text.
| |
| llSay(0, "Please say what you want your message to be on channel 7. EX: /7 Hello, Avatar!");
| |
| //give instructions on how to set the new text
| |
| }
| |
| else
| |
| {
| |
| //if the message didn't fit any of the other messages above
| |
| if(channel == 7)
| |
| {
| |
| //if what was said was on channel 7
| |
| Htext = message;
| |
| //set text to what the script heard
| |
| llSetText(Htext,cur_color, 1);
| |
| //set the text on the prim to current text and color
| |
| llListenRemove(llListen(7, "", llGetOwner(), ""));
| |
| //turn the listener on channel 7 off to reduce lag.
| |
| }
| |
| }
| |
| }
| |
| }
| |