Difference between revisions of "LlGetPrimitiveParams"

From Second Life Wiki
Jump to navigation Jump to search
Line 2: Line 2:
|func_id=279|func_sleep=0.2|func_energy=10.0
|func_id=279|func_sleep=0.2|func_energy=10.0
|func=llGetPrimitiveParams|sort=GetPrimitiveParams
|func=llGetPrimitiveParams|sort=GetPrimitiveParams
|return_type=list|p1_type=list|p1_name=params
|return_type=list|p1_type=list|p1_name=params|p1_desc=PRIM_* flags
|func_footnote
|func_footnote
|func_desc
|func_desc

Revision as of 10:51, 24 February 2007

Summary

Function: list llGetPrimitiveParams( list params );

Returns a list that is the primitive parameters specified in the params list.

• list params PRIM_* flags

Caveats

  • This function causes the script to sleep for 0.2 seconds.
All Issues ~ Search JIRA for related Bugs

Examples

Useful Snippets

list GetPrimitiveParams(list input)
{//Returns a list that can be fed to llSetPrimitiveParams
    list output;
    integer c = -llGetListLength(input);
    integer flag;
    integer side;
    while(c & 0x80000000)
    {
        flag = llList2Integer(input, c++); //pop the stack
        if(~llListFindList([PRIM_BUMP_SHINY, PRIM_COLOR, PRIM_TEXTURE, PRIM_FULLBRIGHT, PRIM_TEXGEN], [flag]))
        {
            side = llList2Integer(input, c++); //pop the stack
            if(side == ALL_SIDES)
            {
                side = llGetNumberOfSides();
                while(side--) //we return the sides in reverse order, easier to code; runs faster.
                    output += [flag, side] + llGetPrimitiveParams([flag, side ]);
            }
            else
                output += [flag, side] + llGetPrimitiveParams([flag, side ]);
        }
        else
            output += flag + llGetPrimitiveParams([flag]);
    }
    return output;
}
//Contributed by Strife Onizuka

See Also

Functions

•  llSetPrimitiveParams Set many primitive parameters

Deep Notes

Search JIRA for related Issues

Signature

function list llGetPrimitiveParams( list params );