Difference between revisions of "LlGetObjectPrimCount"

From Second Life Wiki
Jump to navigation Jump to search
m
m (Why did I do it this way?)
Line 5: Line 5:
|return_type=integer
|return_type=integer
|p1_type=key|p1_name=prim|p1_desc
|p1_type=key|p1_name=prim|p1_desc
|func_footnote=Avatars sitting on the object are not counted{{Footnote|[[llGetNumberOfPrims]] on the other hand does count avatars sitting on the object.|llGetNumberOfPrims on the other hand does count avatars sitting on the object.}}. Zero is returned if '''prim''' {{HoverText|(1)|is not found}} is not found, {{HoverText|(2)|is part of an attachment}} is part of an attachment{{Footnote|Weather the attachment exception is a bug or a feature is unclear.|handle=attachment}}, or {{HoverText|(3)|is not a prim}} is not a prim.
|func_footnote=Avatars sitting on the object are not counted{{Footnote|[[llGetNumberOfPrims]] on the other hand does count avatars sitting on the object.|llGetNumberOfPrims on the other hand does count avatars sitting on the object.}}. Zero is returned if '''prim''' {{HoverText|(A)|is not found}} is not found, {{HoverText|(B)|is part of an attachment}} is part of an attachment{{Footnote|Weather the attachment exception is a bug or a feature is unclear.|handle=attachment}}, or {{HoverText|(C)|is not a prim}} is not a prim.
|func_desc
|func_desc
|return_text=that is the total number of prims in the object that contains '''prim'''.
|return_text=that is the total number of prims in the object that contains '''prim'''.

Revision as of 14:03, 10 February 2014

Summary

Function: integer llGetObjectPrimCount( key prim );
0.0 Forced Delay
10.0 Energy

Returns an integer that is the total number of prims in the object that contains prim.

• key prim prim UUID that is in the same region

Avatars sitting on the object are not counted[1]. Zero is returned if prim (A) is not found, (B) is part of an attachment[2], or (C) is not a prim.

Caveats

  • This cannot be used to detect if an avatar is seated (by checking for a non-zero return), use llGetAgentInfo instead.
  • The prim count for attachments are not returned[2]. If possible use llGetNumberOfPrims instead.

Examples

<lsl>default {

   touch_start(integer num)
   {
       integer prims = llGetObjectPrimCount(llGetKey());
       if (prims == 0)
       {
           // llGetObjectPrimCount returns zero for attachments.
           prims = llGetNumberOfPrims();
           // Avatars can't sit on attachments so this is ok.
       }
       llOwnerSay("This object has "
                   + (string)prims
                   + " prims and "
                   + (string)(llGetNumberOfPrims() - prims)
                   + " avatars.");
   }
}</lsl>

See Also

Functions

•  llGetNumberOfPrims Returns the number of prims in the current object.

Deep Notes

Footnotes

  1. ^ llGetNumberOfPrims on the other hand does count avatars sitting on the object.
  2. ^ Weather the attachment exception is a bug or a feature is unclear.

Signature

function integer llGetObjectPrimCount( key prim );