Difference between revisions of "STATUS PHANTOM"
Jump to navigation
Jump to search
Fred Gandt (talk | contribs) (Added example and description.) |
m (<lsl> tag to <source>) |
||
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. | ||
< | <source 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. | ||
} | } | ||
}</ | }</source> | ||
|constants= | |constants= | ||
{{!}} | {{!}} |
Revision as of 16:18, 23 January 2015
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.
}
}