Difference between revisions of "LlGetOwnerKey"

From Second Life Wiki
Jump to navigation Jump to search
m (rewording comments in example script and made variable local)
m
 
(5 intermediate revisions by 4 users not shown)
Line 12: Line 12:
** Owner information becomes unavailable ''immediately'' on derez or detach. For example, if a prim chats at derez or detach time, {{LSLP|id}} can be returned even inside [[listen]] events of nearby objects. <sup>{{Jira|SVC-5095}}</sup>
** Owner information becomes unavailable ''immediately'' on derez or detach. For example, if a prim chats at derez or detach time, {{LSLP|id}} can be returned even inside [[listen]] events of nearby objects. <sup>{{Jira|SVC-5095}}</sup>
* Also returns {{LSLP|id}} for avatars, use [[llGetAgentSize]] instead to distinguish them from prims that do not exist.
* Also returns {{LSLP|id}} for avatars, use [[llGetAgentSize]] instead to distinguish them from prims that do not exist.
* Returns NULL_KEY if the id passed in is not a valid key
|constants
|constants
|examples=
|examples=
<lsl>
<source lang="lsl2">
default
default
{
{
    on_rez(integer start_param)
    {
        llResetScript();
    }
     state_entry()
     state_entry()
     {
     {
     //  listen to anything talking on channel 1
     //  listen to anything talking on channel 1
         llListen(1, "", NULL_KEY, "");
         llListen(1, "", NULL_KEY, "");
    //  Type "/1 " + message (such as "/1 poke") to chat 'message' on channel 1.
     }
     }


Line 41: Line 38:
     }
     }
}
}
</lsl>
</source>
|helpers
|helpers
|also_functions={{LSL DefineRow||[[llKey2Name]]|}}
|also_functions={{LSL DefineRow||[[llKey2Name]]|}}
{{LSL DefineRow||[[llRequestAgentData]]|}}
{{LSL DefineRow||[[llRequestAgentData]]|}}
{{LSL DefineRow||[[llGetObjectDetails]]|}}
{{LSL DefineRow||[[llGetObjectDetails]]|[[OBJECT_OWNER]]}}
{{LSL DefineRow||[[llGetOwner]]|}}
{{LSL DefineRow||[[llGetOwner]]|}}
|also_tests
|also_tests

Latest revision as of 11:15, 25 September 2017

Summary

Function: key llGetOwnerKey( key id );

Returns a key that is the owner of prim id

• key id prim UUID that is in the same region

Caveats

  • Returns id if id is not found in the region or is not a prim.
    • Owner information becomes unavailable immediately on derez or detach. For example, if a prim chats at derez or detach time, id can be returned even inside listen events of nearby objects. SVC-5095
  • Also returns id for avatars, use llGetAgentSize instead to distinguish them from prims that do not exist.
  • Returns NULL_KEY if the id passed in is not a valid key
All Issues ~ Search JIRA for related Bugs

Examples

default
{
    state_entry()
    {
    //  listen to anything talking on channel 1
        llListen(1, "", NULL_KEY, "");
    //  Type "/1 " + message (such as "/1 poke") to chat 'message' on channel 1.
    }

    listen(integer channel, string name, key id, string message)
    {
        key ownerOfThisObject = llGetOwner();
        key ownerOfSpeaker = llGetOwnerKey(id);

    //  if whoever is talking is the owner of this object
    //  or if the owner of the object talking is the owner of this object
        if (ownerOfSpeaker == ownerOfThisObject)
        {
            llOwnerSay("'" + name + "' has the same owner as me ^_^");
        }
    }
}

See Also

Deep Notes

Search JIRA for related Issues

Signature

function key llGetOwnerKey( key id );