Linked Prim Scrubber

Written by: Headmaster

This gadget will clean linked prims of particles, text, Rotations objects inventory: items and scripts to use just put root base and linked scrubber in obects main (root) prim the base script will put the scrubber in all linked prims after putting scripts in the root prim. will be cleaned then take object into inventory rerez object edit object go to tools menu choose set scripts to running and poof linked object will have nothing no inventory or any particles, movement or text in (LinkedScrubber) script edjust sleep event for object prim size 2-50 prim object sleep for 0.5-1.5 seconds 51-100 prims 1.5-3.0 101-150 prims 3.0-4.5 seconds 151-256 prims 4.5-6.5 seconds

There are 3 scripts included in this post

Linked Scrubber:

string scriptName;
default  
{         
state_entry()     
{ 
        llSleep(1.5);
        llSetSitText( "" );
        llSetTouchText( "" );
        llParticleSystem( [ ] );
        llSetText( "", ZERO_VECTOR, 1.0 );
        llTargetOmega( ZERO_VECTOR, 0, 0 );
        llSetCameraAtOffset( ZERO_VECTOR );
        llSetCameraEyeOffset( ZERO_VECTOR );
        llSitTarget( ZERO_VECTOR, ZERO_ROTATION );
        llSetTextureAnim( FALSE , ALL_SIDES, 1, 1, 0, 0, 0.0 );
        llStopSound();
        llOwnerSay("This Prim is Clean... ");        
        llSetObjectName((string)llGetLinkNumber()); 
        llOwnerSay("" + (string)llGetLinkNumber()); 
        integer total = llGetInventoryNumber(INVENTORY_ALL);
        integer i;
        for (i = 0; i < total; i++) {
         string name = llGetInventoryName(INVENTORY_ALL, i);
         if (name != scriptName) llRemoveInventory(name);       
        llRemoveInventory(llGetScriptName());     
    } 
  }
}

 Linked Scrubber Base Script 2.0:

string script = "LinkedScrubber";  
default 
{   
state_entry()
    {
  
       integer i;     
       for(i = 2; i <= llGetNumberOfPrims(); i++) 
       {            
        key k = llGetLinkKey(i);             
        llGiveInventory(k, script);
    
    }
}

        changed(integer mask)
         {
           if(mask & (CHANGED_INVENTORY))
           llResetScript();  
              
         }    
    }

 

Single Prim Scrubber:

string scriptName;
default  
{         
state_entry()     
{ 
        llSleep(1.5); //change per object link size
        llSetSitText( "" );
        llSetTouchText( "" );
        llParticleSystem( [ ] );
        llSetText( "", ZERO_VECTOR, 1.0 );
        llTargetOmega( ZERO_VECTOR, 0, 0 );
        llSetCameraAtOffset( ZERO_VECTOR );
        llSetCameraEyeOffset( ZERO_VECTOR );
        llSitTarget( ZERO_VECTOR, ZERO_ROTATION );
        llSetTextureAnim( FALSE , ALL_SIDES, 1, 1, 0, 0, 0.0 );
        llStopSound();
        llOwnerSay("This Prim is Clean... ");        
       // llSetObjectName((string)llGetLinkNumber()); 
        llOwnerSay("" + (string)llGetLinkNumber()); 
        integer total = llGetInventoryNumber(INVENTORY_ALL);
        integer i;
        for (i = 0; i < total; i++) {
         string name = llGetInventoryName(INVENTORY_ALL, i);
         if (name != scriptName) llRemoveInventory(name);       
        llRemoveInventory(llGetScriptName());     
    } 
  }
}