Difference between revisions of "Remove Prim Properties"

From Second Life Wiki
Jump to navigation Jump to search
(Adjusted toc targeting and sub-headings. Turned integers to floats where appropriate. Added target omega cancellation.)
(Target omega won't scrub while the script that set it remains and it stops if that is removed anyway so...oh well.)
Line 66: Line 66:
         llSetStatus( STATUS_PHYSICS | STATUS_PHANTOM, FALSE);
         llSetStatus( STATUS_PHYSICS | STATUS_PHANTOM, FALSE);
         llSetStatus( STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z, TRUE);
         llSetStatus( STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z, TRUE);
        llRemoveInventory(llGetScriptName());
    }
}</lsl>
==Cancel Spinning ([[llTargetOmega]])==
<lsl>default {
    state_entry() {
        llTargetOmega(<0.0,0.0,0.0>, 0.0, 0.0);
         llRemoveInventory(llGetScriptName());
         llRemoveInventory(llGetScriptName());
     }
     }

Revision as of 05:31, 18 May 2010

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,0.0>, 0.0);
       llRemoveInventory(llGetScriptName());
   }

}</lsl>

Remove Particles (llParticleSystem)

<lsl>default {

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

}</lsl>

Remove Texture Animation (llSetTextureAnim)

<lsl>default {

   state_entry() {
       llSetTextureAnim(FALSE, ALL_SIDES, 0, 0, 0.0, 0.0, 1.0);
       llRemoveInventory(llGetScriptName());
   }

}</lsl>

Remove Sit Target (llSitTarget)

<lsl>default {

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

}</lsl>

Remove Forced Mouselook on Sit (llForceMouselook)

<lsl>default {

   state_entry() {
       llForceMouselook(FALSE);
       llRemoveInventory(llGetScriptName());
   }

}</lsl>

Reset Pie Menu "Sit" Option (llSetSitText)

<lsl>default {

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

}</lsl>

Reset 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>