Report button.lsl
Jump to navigation
Jump to search
// Global Variables
integer available = 1;
integer toAllChannel = -255; // general channel - linked message
default
{
state_entry()
{
//on a reset or startup this test button can not be used
available = 0;
//set color to unavailable
//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(available)
{
available = 0;
llMessageLinked(LINK_ALL_OTHERS, toAllChannel, "ActivateReport", 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 unavailable
//llSetColor( <255,0,0>, ALL_SIDES);
//llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
llSetTexture( "alpha", ALL_SIDES);
available = 0;
}
if(llSubStringIndex( message, "TestComplete") != -1)
{
//set color to available
llSetColor( <0,255,0>, ALL_SIDES);
llSetTexture( "busy_anim v5_9", ALL_SIDES);
llSetTextureAnim( ANIM_ON, ALL_SIDES, 5, 5, 24, 1, 10 );
available = 1;
}
if(llSubStringIndex( message, "ReportComplete") != -1)
{
//set color to available
llSetColor( <0,255,0>, ALL_SIDES);
llSetTexture( "busy_anim v5_9", ALL_SIDES);
llSetTextureAnim( ANIM_ON, ALL_SIDES, 5, 5, 24, 1, 10 );
available = 1;
}
if(llSubStringIndex( message, "ActivateRegistration") != -1)
{
//set color to unavailable
//llSetColor( <255,0,0>, ALL_SIDES);
//llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
llSetTexture( "alpha", ALL_SIDES);
available = 0;
}
if(llSubStringIndex( message, "ActivateTest") != -1)
{
//set color to unavailable
//llSetColor( <255,0,0>, ALL_SIDES);
//llSetTextureAnim( ANIM_ON | LOOP , ALL_SIDES, 5, 5, 24, 1, 10 );
llSetTexture( "alpha", ALL_SIDES);
available = 0;
}
if( message == "reset" )
{
llResetScript();
}
}
} //end of link message
}