llGetAgentSize

From Second Life Wiki
Revision as of 07:59, 12 November 2007 by Strife Onizuka (talk | contribs) (It's a great example but at this point in time it's antiquated. Much easier to use llGetObjectDetails, probably should use it instead of llGetAgentSize too but that would spoil all the fun.)
Jump to navigation Jump to search

Summary

Function: vector llGetAgentSize( key id );

Returns a vector that is the size of the requested avatar by id.

• key id

The agent id must be in the same region as the requesting object, ZERO_VECTOR is returned if not.

Examples

//A simple script that makes a box hover above the owner's head.
default {
    state_entry(integer i) {
        key owner = llGetOwner();
        vector pos = llList2Vector(llGetObjectDetails(owner, [OBJECT_POSITION]),0);
        vector agent = llGetAgentSize(owner);
        pos.z += 0.5 + agent.z / 2;
        llSetPos(pos);
    }
    touch_start(integer num)
    {
        llResetScript();
    }
}


Corrected Code, Comments welcomed. --Mr Lovenkraft 05:49, 12 November 2007 (PST)

//This code was edited by Mr Lovenkraft for errors, comments are below.
vector size;
default 
{
    on_rez(integer i) 
    {
        llSensor("", llGetOwner(), AGENT, 96, PI); //I reversed the "96" and the "PI" because-
    }                                              //PI defines the Arc. and 96 Defines the meters.
    sensor(integer num)                            //Not the other way around.
    {
        vector where = llDetectedPos(0);
        vector agent = llGetAgentSize(llGetOwner())/2;
        size += agent + <0,0,.5>; //"size" Has to be defined in some way, I made it a Global
        llSetPos(where + size); //In order for "size" to effect this code it must be added in
    }                           //some way, which is why it says "llSetPos(where + size);"
    touch_start(integer num)
    {
        llResetScript();
    }
}

Notes

This is a good way to test if an av is in the same region.

See Also

Functions

•  llGetBoundingBox
•  llGetAgentInfo
•  llRequestAgentData

Deep Notes

Search JIRA for related Issues

Signature

function vector llGetAgentSize( key id );