Difference between revisions of "Rainbow palette"

From Second Life Wiki
Jump to: navigation, search
Line 1: Line 1:
 +
<lsl>
 
// Rainbow Palette by Rui Clary
 
// Rainbow Palette by Rui Clary
 
// This script will only run in Mono enabled, Second Life  Viewer 1.21 or above  
 
// This script will only run in Mono enabled, Second Life  Viewer 1.21 or above  
Line 61: Line 62:
 
}
 
}
  
 +
</lsl>
  
 
+
<lsl>
 
+
 
// Rainbow Palette Listen Script by Rui Clary
 
// Rainbow Palette Listen Script by Rui Clary
 
// This script will only run in Mono enabled, Second Life  Viewer 1.21 or above  
 
// This script will only run in Mono enabled, Second Life  Viewer 1.21 or above  
Line 86: Line 87:
 
     }
 
     }
 
}
 
}
 +
</lsl>

Revision as of 16:46, 26 September 2008

<lsl> // Rainbow Palette by Rui Clary // This script will only run in Mono enabled, Second Life Viewer 1.21 or above // // Interactive Rainbow Palette // // Add this script to a cube prim and add "Listen Palete" script to another Object. // Touch face 1 of "Rainbow Palette" to change #Listen Object# color. // // Available under the Creative Commons Attribution-ShareAlike 3.0 license // http://creativecommons.org/licenses/by-sa/2.5/

default {

   state_entry()
   {
       llSetObjectName("pal");
       llSetTexture ("5748decc-f629-461c-9a36-a35a221fe21f",ALL_SIDES);
       llSetTexture("5543eaa7-4283-8383-eef9-945c0b3f25c7",1);
   }
   touch(integer num_detected) 
   {
       float x;
       float r;
       float g;
       float b;
        vector touchedpos = llDetectedTouchST(0);  
        if (llDetectedTouchFace(0)==1)
        {  
            x=360*touchedpos.x;
           
           if (x>=0&&x<=60)
               {r=255;}
           if(x>=300&&x<=360)
               {r=255;}
           if (x>=120&&x<=240)
               {r=0;}
           if (x>60&&x<=120)
               {r=255-(x-60)*255/60;}
           if (x>240&&x<300)
               {r=(x-240)*255/60;}        
           if (x>=0&&x<60)
               {g=x*255/60;}    
           if (x>=60&&x<=180)
               {g=255;}        
           if (x>180&&x<240)
               {g=255-(x-180)*255/60;}        
           if (x>=240&&x<=360)
               {g=0;}                
           if (x>=0&&x<=120)
               {b=0;}    
           if (x>120&&x<180)
               {b=(x-120)*255/60;}    
           if (x>=180&&x<=300)
               {b=255;}        
           if (x>300&&x<=360)
               {b=255-(x-300)*255/60;}  
               llSay(4,"<"+(string)(r/255)+","+(string)(g/255)+","+(string)(b/255)+">");
       }
   }
  

}

</lsl>

<lsl> // Rainbow Palette Listen Script by Rui Clary // This script will only run in Mono enabled, Second Life Viewer 1.21 or above // // Interactive Rainbow Palette // // Add this script to a cube prim and add "Listen Palete" script to another Object. // Touch face 1 of "Rainbow Palette" to change #Listen Object# color. // // Available under the Creative Commons Attribution-ShareAlike 3.0 license // http://creativecommons.org/licenses/by-sa/2.5/

default {

   state_entry()
   {
       llListen( 4, "pal", NULL_KEY, "" ); 
   }
  listen( integer channel, string name, key id, string message )
   {
       llSetColor((vector)message,0);
   }

} </lsl>