LSL Status/Kan-ed3
From OpenSimulator
(Difference between revisions)
m (Robot: Cosmetic changes) |
|||
| (One intermediate revision by one user not shown) | |||
| Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
| − | {{ | + | {{Quicklinks}} |
<br /> | <br /> | ||
| Line 55: | Line 55: | ||
'''Status:''' Working! | '''Status:''' Working! | ||
| − | |||
[[Category:Scripts]] | [[Category:Scripts]] | ||
Latest revision as of 19:31, 3 March 2012
Code
integer counter;
integer second;
default
{
state_entry()
{
llSay( 0, "Hello, Avatar! Touch to change color and size.");
counter = 0;
}
touch_start(integer total_number)
{
counter = counter + 1;
llSay( 0, "Touched by angel number " + (string)counter);
llSetTimerEvent( 2 ); // create a "timer event" every 2 seconds.
}
timer() // do these instructions every time the timer event occurs.
{
second++;
// choose three random RGB color components between 0. and 1.0.
float red = llFrand( 1.0 );
float green = llFrand( 1.0 );
float blue = llFrand( 1.0 );
// combine color components into a vector and use that vector
// to set object color.
vector prim_color = < red, green, blue >;
llSetColor( prim_color, ALL_SIDES ); // set object color to new color.
// a choose random number between 0. and 10 for use as a scale factor.
float new_scale = llFrand( 10.0 );
llSetScale(< new_scale, new_scale, new_scale > ); // set object scale.
if ( second > 19 ) // then time to wrap this up.
{
// turn object black, print "resting" message, and reset object....
llSetColor( < 0, 0, 0 >, ALL_SIDES );
llSay( 0, "Object now resting and resetting script." );
llResetScript(); // return object to ready state.
}
}
}
Status: Working!