Difference between revisions of "Test button.lsl"

From Second Life Wiki
Jump to navigation Jump to search
m (New page: <pre> // Global Variables integer avaliable = 1; integer toAllChannel = -255; // general channel - linked message default { state_entry() { //on a reset...)
 
m (lsl code tagging)
Line 1: Line 1:
<pre>
<lsl>
// Global Variables
// Global Variables
integer avaliable = 1;
integer avaliable = 1;
Line 89: Line 89:
      
      
}
}
</pre>
</lsl>

Revision as of 23:35, 10 April 2008

<lsl> // Global Variables integer avaliable = 1; integer toAllChannel = -255; // general channel - linked message

default {

   state_entry()
   {
       //on a reset or statup this test button can not be used
       avaliable = 0;
               //set color to unavaliable
               //llSetColor( <255,0,0>, ALL_SIDES);
               //llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
               llSetTexture( "alpha", ALL_SIDES);
   }
   touch_start(integer total_number)
   {
       if(avaliable)
       {
          avaliable = 0; 
          llMessageLinked(LINK_ALL_OTHERS, toAllChannel, "ActivateTest", NULL_KEY);
          //set color to busy
          llSetColor( <255,255,255>, ALL_SIDES);
          llSetTexture( "busy_anim v5_9", ALL_SIDES);
          llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 0, 23, 10 );
       }
   }

/////////////////////////////////////////////////////// // Link Message of default state // ///////////////////////////////////////////////////////

   link_message(integer sender_number, integer number, string message, key id)
   {
       //if link message is on the correct channel
       if(number == toAllChannel)
       {
           if(llSubStringIndex( message, "RegistrationComplete") != -1)
           {
               //set color to avaliable
               llSetColor( <0,255,0>, ALL_SIDES);
               llSetTexture( "busy_anim v5_9", ALL_SIDES);
               llSetTextureAnim( ANIM_ON, ALL_SIDES, 5, 5, 24, 1, 10 );
               avaliable = 1;
           }
           if(llSubStringIndex( message, "TestComplete") != -1)
           {
               //set color to avaliable
               llSetColor( <0,255,0>, ALL_SIDES);
               llSetTexture( "busy_anim v5_9", ALL_SIDES);
               llSetTextureAnim( ANIM_ON, ALL_SIDES, 5, 5, 24, 1, 10 );
               avaliable = 1;
           }
           if(llSubStringIndex( message, "ReportComplete") != -1)
           {
               //set color to avaliable
               llSetColor( <0,255,0>, ALL_SIDES);
               llSetTexture( "busy_anim v5_9", ALL_SIDES);
               llSetTextureAnim( ANIM_ON, ALL_SIDES, 5, 5, 24, 1, 10 );
               avaliable = 1;
           }
           
           if(llSubStringIndex( message, "ActivateRegistration") != -1)
           {
               //set color to unavaliable
               //llSetColor( <255,0,0>, ALL_SIDES);
               //llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
               llSetTexture( "alpha", ALL_SIDES);
               avaliable = 0;
           }
           if(llSubStringIndex( message, "ActivateReport") != -1)
           {
               //set color to unavaliable
               //llSetColor( <255,0,0>, ALL_SIDES);
               //llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
               llSetTexture( "alpha", ALL_SIDES);
               avaliable = 0;
           }
           
           if( message == "reset" )
           {
             llResetScript();     
           } 
           
       }
       
   } //end of link message
   

} </lsl>