llGetLinkNumber
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: integer llGetLinkNumber( );139 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns an integer that is the link number of the prim containing the script.
0
means the prim is not linked, 1
the prim is the root, 2
the prim is the first child, etc. Links are numbered in the reverse order in which they were linked -- if you select a box, a sphere and a cylinder in that order, then link them, the cylinder is 1, the sphere is 2 and the box is 3. The last selected prim has the lowest link number.
Caveats
- By design may equal llGetNumberOfPrims, e.g., when prim is last, object contains multiple prims, and no sitting avatars
Examples
default
{
state_entry()
{
llOwnerSay((string) llGetLinkNumber());
llOwnerSay((string) llGetNumberOfPrims());
}
}
A non-obvious feature is using double-negation to obtain a link number zero (for an unlinked prim) or one (for the root of a linkset). Unlike constants like LINK_ROOT, this number can be used directly with functions like llGetLinkPrimitiveParams without first determining whether a prim is part of a linkset:
default
{
state_entry()
{
integer rootLinkNum = !!llGetLinkNumber();
// returns 0 in an unlinked prim, 1 in a linkset
integer isFullBright = llList2Integer(llGetLinkPrimitiveParams(rootLinkNum,[PRIM_FULLBRIGHT, ALL_SIDES]),0);
// TRUE if all sides of an unlinked prim or the root of a linkset are set to full bright, FALSE otherwise
}
}
See Also
Functions
• | llGetKey | |||
• | llGetNumberOfPrims |