llGetGender

From Second Life Wiki
Jump to navigation Jump to search
Emblem-important-yellow.png LSL Feature Request
The described function does not exist. This article is a feature request.

Summary

Function: string llGetGender( key avatar );

Returns a string the "female" or "male" setting for the shape currently worn by an agent located in the same region the script is running in.

• key avatar agent UUID

Specification

Note that this feature was added under a different name, see OBJECT_BODY_SHAPE_TYPE.

string GetGender(key avatar)
{
    float gender = llList2Float(llGetObjectDetails(avatar, [OBJECT_BODY_SHAPE_TYPE]), 0)
    // In practice this is only expected to return -1.0, 0.0 or 1.0
    if (gender < 0.0) return ""; // agent not found
    if (gender == 0.0)  return "female";
    if (gender < 0.5)   return "somewhat feminine";
    if (gender == 0.5)  return "androgynous";
    if (gender < 1.0)   return "somewhat masculine";
    return "male";
}

Caveats

  • Works only for agents recently located in the same region the script is running in.
    • Grid-wide GetGender could be provided via a dataserver call.

Examples

Notes

This function only returns the gender setting on the avatar's currently worn shape, which can change at any time. Avatars do not have a set gender of their own. Information about the user's real life gender is not available. Very useful for some special kind of products like poseballs and animations, also for attaching or detaching some body parts and access rules in some regions.
Sounds useful indeed, but should probably be agent data you can fetch with llRequestAgentData.

See Also

Functions

•  llRequestAgentData

Deep Notes

Signature

//function string llGetGender( key avatar );