Difference between revisions of "PRIM PHYSICS"

From Second Life Wiki
Jump to: navigation, search
(added example of setting and getting the Prim Physics)
m (<lsl> tag to <source>)
 
(3 intermediate revisions by 2 users not shown)
Line 15: Line 15:
 
|pa={{LSL Constant/List|i_front=[[llSetPrimitiveParams]]([&#32;{{#var:physics_const}},&#32;|i_end=&nbsp;]);
 
|pa={{LSL Constant/List|i_front=[[llSetPrimitiveParams]]([&#32;{{#var:physics_const}},&#32;|i_end=&nbsp;]);
 
|text={{LSL Constant/PrimParamText|set}}
 
|text={{LSL Constant/PrimParamText|set}}
|i1_type=integer|i1_name=boolean
+
|i1_type=integer|i1_subtype=boolean|i1_name=boolean
 
|toc=llSetPrimitiveParams
 
|toc=llSetPrimitiveParams
 
}}
 
}}
Line 21: Line 21:
 
|r_front=Returns the list [&nbsp;|r_end=&nbsp;]
 
|r_front=Returns the list [&nbsp;|r_end=&nbsp;]
 
|text={{LSL Constant/PrimParamText|get}}
 
|text={{LSL Constant/PrimParamText|get}}
|r1_type=integer|r1_name=boolean
+
|r1_type=integer|r1_subtype=boolean|r1_name=boolean
 
|toc=llGetPrimitiveParams
 
|toc=llGetPrimitiveParams
 
}}
 
}}
|examples=<lsl>default
+
|examples=<source lang="lsl2">default
 
{
 
{
 
     state_entry()
 
     state_entry()
 
     {
 
     {
         llSetPrimitiveParams([PRIM_PHYSICS, TRUE]); // makes the prim physical...
+
         llSetPrimitiveParams([PRIM_PHYSICS, TRUE]); // makes the object physical...
 
          
 
          
         if(llGetPrimitiveParams([PRIM_PHYSICS]) == TRUE)  
+
         integer isPhysical = llList2Integer(llGetPrimitiveParams([PRIM_PHYSICS]), 0);
 +
       
 +
        if( isPhysical == 1 )
 
         {
 
         {
 
             llSetText("Object is Physical", <1, 1, 1>, 1.0);
 
             llSetText("Object is Physical", <1, 1, 1>, 1.0);
Line 40: Line 42:
 
         }
 
         }
 
     }
 
     }
}</lsl>
+
}</source>
 
|caveats=
 
|caveats=
 
*calls to set PRIM_PHYSICS in attachments fail silently
 
*calls to set PRIM_PHYSICS in attachments fail silently

Latest revision as of 16:48, 23 January 2015

Description

Constant: integer PRIM_PHYSICS = 3;

The integer constant PRIM_PHYSICS has the value 3

Used to get or set the object's physics status. When enabled the object responds to SL physics.

llSetPrimitiveParams

llSetPrimitiveParams([ PRIM_PHYSICS, integer boolean ]);
• integer boolean TRUE enables, FALSE disables

The same syntax applies to llSetLinkPrimitiveParams and llSetLinkPrimitiveParamsFast but with an additional prefixed link parameter in the function call.

llGetPrimitiveParams

llGetPrimitiveParams([ PRIM_PHYSICS ]);

Returns the list [ integer boolean ]

• integer boolean TRUE enables, FALSE disables

The same syntax applies to llGetLinkPrimitiveParams, but with an additional prefixed link parameter in the function call.

Caveats

  • calls to set PRIM_PHYSICS in attachments fail silently
All Issues ~ Search JIRA for related Bugs

Related Articles

Examples

default
{
    state_entry()
    {
        llSetPrimitiveParams([PRIM_PHYSICS, TRUE]); // makes the object physical...
 
        integer isPhysical = llList2Integer(llGetPrimitiveParams([PRIM_PHYSICS]), 0);
 
        if( isPhysical == 1 )
        {
            llSetText("Object is Physical", <1, 1, 1>, 1.0);
        }
 
        else
        {
            llSetText("Object is non-Physical", <1, 1, 1>, 1.0);
        }
    }
}

Deep Notes

Search JIRA for related Issues

Signature

integer PRIM_PHYSICS = 3;