50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
| 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.
 | |
|        }
 | |
|    }
 | |
| }
 | |
| 
 |