Remove Prim Properties

From Second Life Wiki
Revision as of 14:46, 24 October 2008 by Strife Onizuka (talk | contribs)
Jump to navigation Jump to search

Prim Properties

Prim properties are attributes of a prim which are set via scripts, yet are retained by the prim even after the script is deleted from the prim. The two most common properties are floating text and particles. The scripts below show how to remove these properties from a prim.

When dropped onto a prim, the script will remove the designated property and delete itself from the prim.

Remove Floating Text (llSetText)

<lsl> default {

   state_entry() {
       llSetText("", <0,0,0>, 0);
       llRemoveInventory(llGetScriptName());
   }

} </lsl>

Remove Particles (llParticleSystem)

<lsl> default {

   state_entry() {
       llParticleSystem([]);
       llRemoveInventory(llGetScriptName());
   }

} </lsl>

Remove Sit Target (llSitTarget)

<lsl> default {

   state_entry() {
       llSitTarget(ZERO_VECTOR, ZERO_ROTATION);
       llRemoveInventory(llGetScriptName());
   }

} </lsl>

Reset Pie Menu "Sit" Option (llSetSitText)

<lsl> default {

   state_entry() {
       llSetSitText("");
       llRemoveInventory(llGetScriptName());
   }

} </lsl>

Remove Pie Menu "Touch" Option (llSetTouchText)

<lsl> default {

   state_entry() {
       llSetTouchText("");
       llRemoveInventory(llGetScriptName());
   }

} </lsl>

Reset to Default Prim Status (llSetStatus)

<lsl> default {

   state_entry() {
       llSetStatus( STATUS_PHYSICS | STATUS_PHANTOM, FALSE);
       llSetStatus( STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z, TRUE);
       llRemoveInventory(llGetScriptName());
   }

} </lsl>