Difference between revisions of "STATUS PHANTOM"
Jump to navigation
Jump to search
Fred Gandt (talk | contribs) (Added example and description.) |
m (Replaced <source> with <syntaxhighlight>) |
||
(One intermediate revision by one other user not shown) | |||
Line 5: | Line 5: | ||
|desc=This property (set FALSE by default) when set TRUE turns the object un-solid (objects and avatars can pass through it). | |desc=This property (set FALSE by default) when set TRUE turns the object un-solid (objects and avatars can pass through it). | ||
|examples=A simple "secret" door. The object will turn un-solid (phantom) when the owner collides with it. So, if this script is in a prim that is part of your wall, it will allow only you to pass through. | |examples=A simple "secret" door. The object will turn un-solid (phantom) when the owner collides with it. So, if this script is in a prim that is part of your wall, it will allow only you to pass through. | ||
< | <syntaxhighlight lang="lsl2">default | ||
{ // Triggered when objects (including avatars) collide with the object containing this script | { // Triggered when objects (including avatars) collide with the object containing this script | ||
collision_start(integer nd) | collision_start(integer nd) | ||
Line 20: | Line 20: | ||
llSetStatus(STATUS_PHANTOM, FALSE); // Set the object solid. | llSetStatus(STATUS_PHANTOM, FALSE); // Set the object solid. | ||
} | } | ||
}</ | }</syntaxhighlight> | ||
|constants= | |constants= | ||
{{!}} | {{!}} |
Latest revision as of 18:31, 27 September 2024
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Description
Constant: integer STATUS_PHANTOM = 0x10;The integer constant STATUS_PHANTOM has the value 0x10
This property (set FALSE by default) when set TRUE turns the object un-solid (objects and avatars can pass through it).
Caveats
Related Articles
Constants
|
Functions
• | llSetStatus | |||
• | llGetStatus |
Examples
A simple "secret" door. The object will turn un-solid (phantom) when the owner collides with it. So, if this script is in a prim that is part of your wall, it will allow only you to pass through.
default
{ // Triggered when objects (including avatars) collide with the object containing this script
collision_start(integer nd)
{
while(nd)
{ // Cycle through the detected keys of those objects that collided this time checking if each is the owner.
if(llDetectedKey(--nd) == llGetOwner())
llSetStatus(STATUS_PHANTOM, TRUE); // Become un-solid
}
}
collision_end(integer nd)
{
if(llGetStatus(STATUS_PHANTOM)) // If the object is un-solid
llSetStatus(STATUS_PHANTOM, FALSE); // Set the object solid.
}
}