Remove Prim Properties
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
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.
Prim Scripts
When dropped onto a prim, theses scripts will remove the designated property and delete itself from the prim.
Remove Floating Text ()
<lsl>default {
state_entry() { llSetText("", <0.0,0.0,0.0>, 0.0); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Particles ()
<lsl>default {
state_entry() { llParticleSystem([]); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Texture Animation ()
<lsl>default {
state_entry() { llSetTextureAnim(FALSE, ALL_SIDES, 0, 0, 0.0, 0.0, 1.0); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Sit Target ()
<lsl>default {
state_entry() { llSitTarget(ZERO_VECTOR, ZERO_ROTATION); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Forced Mouselook on Sit ()
<lsl>default {
state_entry() { llForceMouselook(FALSE); llRemoveInventory(llGetScriptName()); }
}</lsl>
Reset Pie Menu "Sit" Option ()
<lsl>default {
state_entry() { llSetSitText(""); llRemoveInventory(llGetScriptName()); }
}</lsl>
Reset Pie Menu "Touch" Option ()
<lsl>default {
state_entry() { llSetTouchText(""); llRemoveInventory(llGetScriptName()); }
}</lsl>
Object Scripts
When dropped onto an object, theses scripts will remove the designated property from all prims and delete the script from the object's inventory.
Remove Floating Text ()
<lsl>default {
state_entry() { llSetLinkPrimitiveParamsFast(LINK_SET, [PRIM_TEXT, "", <0.0,0.0,0.0>, 0.0]); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Particles ()
<lsl>default {
state_entry() { llLinkParticleSystem(LINK_SET, []); llRemoveInventory(llGetScriptName()); }
}</lsl>
Remove Texture Animation ()
<lsl>default {
state_entry() { llSetLinkTextureAnim(LINK_SET, FALSE, ALL_SIDES, 0, 0, 0.0, 0.0, 1.0); llRemoveInventory(llGetScriptName()); }
}</lsl>
Reset to Default Object Status ()
<lsl>default {
state_entry() { llSetStatus( STATUS_PHYSICS | STATUS_PHANTOM, FALSE); llSetStatus( STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z, TRUE); llRemoveInventory(llGetScriptName()); }
}</lsl>