llPushObject

From Second Life Wiki
Revision as of 18:53, 23 September 2008 by Vincent Nacon (talk | contribs) (Object can only push its owner agent in no push area.)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Summary

Function: llPushObject( key target, vector impulse, vector ang_impulse, integer <span title="boolean, if TRUE uses the local axis of target, if FALSE uses the region axis." style="border-bottom:1px dotted; cursor:help;">local );

Applies impulse and ang_impulse to object id

• key target Avatar or object UUID in the sim
• vector impulse
• vector ang_impulse angular impulse
• integer local boolean, if TRUE uses the local axis of target, if FALSE uses the region axis.

Caveats

  • Only works on land where Push is not restricted or where the script is owned by the land owner.
    • If the land is owned by a group, the scripted object must be deeded to the same group.
  • The effectiveness of Push is modulated by the amount of script energy available.
    • There is a simplified code snippet describing how Push is implemented in the Havok4 project and reveals some of the details of how the energy budget affects the final Push magnitude.
  • Object can only push its owner agent in no push area.
All Issues ~ Search JIRA for related Bugs

Examples

<lsl>// Pushes the collided object or avatar. default {

   collision_start(integer num_detected)
   {
       llPushObject(llDetectedKey(0),<0,0,100>, <0,0,100>, TRUE);
   }
}</lsl>

Deep Notes

Search JIRA for related Issues

Signature

function void llPushObject( key target, vector impulse, vector ang_impulse, integer local );