Difference between revisions of "LlGetObjectName"

From Second Life Wiki
Jump to navigation Jump to search
m
 
(15 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{LSL_Function
{{LSL_Function
|inject-2={{LSL_Function/limits}}
|func_id=202|func_sleep=0.0|func_energy=10.0
|func_id=202|func_sleep=0.0|func_energy=10.0
|func=llGetObjectName
|func=llGetObjectName
|return_type=string
|return_type=string
|func_footnote
|func_footnote={{LSL Tip|This function '''does not''' get the name of the object's rootprim, but the name of the prim containing the script. Please use [[llGetLinkName]]([[LINK_ROOT]]); instead.}}
|func_desc
|func_desc
|return_text=that is the name of the prim the script is attached to.
|return_text=that is the name of the ''prim'' the script is attached to.
|spec
|spec
|caveats=*The prim name is limited to 255 bytes, any string longer than that will be truncated. This truncation does not always happen when the attribute is set or read.
|caveats=*The prim name is limited to 63 bytes, any string longer than that will be truncated. This truncation does not always happen when the attribute is set or read.
*This function may return "(Waiting)" sometimes. See: [[#Notes]]
|constants
|constants
|examples=<pre>
|examples=
{{{!}} class="sortable" width="100%" {{Prettytable}}
{{!}}- {{Hl2}}
! '''Get this prim's name'''
! '''Get the root prim's name'''
{{!}}-
{{!!}}<source lang="lsl2">
default
default
{
{
     state_entry()
     state_entry()
     {
     {
         llSay(PUBLIC_CHANNEL, llGetObjectName() );
    //  PUBLIC_CHANNEL has the integer value 0
         llSay(PUBLIC_CHANNEL, "This prim's name: " + llGetObjectName() );
     }
     }
}
}
</pre>
</source>
{{!!}}
<source lang="lsl2">
default
{
    state_entry()
    {
    //  PUBLIC_CHANNEL has the integer value 0
        llSay(PUBLIC_CHANNEL, "Root prim's name: "
            + llGetLinkName(LINK_ROOT));
    }
}
</source>
{{!}}}
|helpers
|helpers
|also_functions=
|also_functions=
Line 23: Line 45:
{{LSL DefineRow||[[llGetLinkName]]|Get a linked prims name}}
{{LSL DefineRow||[[llGetLinkName]]|Get a linked prims name}}
{{LSL DefineRow||[[llGetObjectDesc]]|Get the prims description}}
{{LSL DefineRow||[[llGetObjectDesc]]|Get the prims description}}
{{LSL DefineRow||[[llSetObjectDesc]]|Get the prims description}}
{{LSL DefineRow||[[llSetObjectDesc]]|Sets the prims description}}
{{LSL DefineRow||[[llGetObjectDetails]]}}
{{LSL DefineRow||[[llGetObjectDetails]]}}
|also_tests
|also_tests
Line 29: Line 51:
|also_articles=
|also_articles=
{{LSL DefineRow||[[Prim Attribute Overloading]]}}
{{LSL DefineRow||[[Prim Attribute Overloading]]}}
|notes=*This function can will return "(Waiting)" sometimes.
|notes=
==== Erroneous "(Waiting)" ====
Presumably the function queries the asset server for a predetermined time and returns "(Waiting)" if that elapses.
Presumably the function queries the asset server for a predetermined time and returns "(Waiting)" if that elapses.
It then silently proceeds to the next instruction.
It then silently proceeds to the next instruction.
A work around therefore, might be to test object name is not "(Waiting)" after calling llGetObjectName.
A work around therefore, might be to test object name is not "(Waiting)" after calling llGetObjectName.
|cat1=Prim
|cat1=Prim
|cat2=Object
|cat2
|cat3
|cat3
|cat4
|cat4
}}
}}

Latest revision as of 01:20, 22 January 2015

Summary

Function: string llGetObjectName( );
0.0 Forced Delay
10.0 Energy

Returns a string that is the name of the prim the script is attached to.

KBcaution.png Important: This function does not get the name of the object's rootprim, but the name of the prim containing the script. Please use llGetLinkName(LINK_ROOT); instead.

Caveats

  • The prim name is limited to 63 bytes, any string longer than that will be truncated. This truncation does not always happen when the attribute is set or read.
  • This function may return "(Waiting)" sometimes. See: #Notes

Examples

Get this prim's name Get the root prim's name
default
{
    state_entry()
    {
    //  PUBLIC_CHANNEL has the integer value 0
        llSay(PUBLIC_CHANNEL, "This prim's name: " + llGetObjectName() );
    }
}
default
{
    state_entry()
    {
    //  PUBLIC_CHANNEL has the integer value 0
        llSay(PUBLIC_CHANNEL, "Root prim's name: "
            + llGetLinkName(LINK_ROOT));
    }
}

Notes

Erroneous "(Waiting)"

Presumably the function queries the asset server for a predetermined time and returns "(Waiting)" if that elapses. It then silently proceeds to the next instruction. A work around therefore, might be to test object name is not "(Waiting)" after calling llGetObjectName.

See Also

Functions

•  llSetObjectName Set the prims name
•  llGetLinkName Get a linked prims name
•  llGetObjectDesc Get the prims description
•  llSetObjectDesc Sets the prims description
•  llGetObjectDetails

Articles

•  Limits SL limits and constrictions
•  Prim Attribute Overloading

Deep Notes

Signature

function string llGetObjectName();