function
Function syntax
llPushObject(key target,// UUID of the target avatar or object in the same region.vector impulse,// Linear impulse vector representing the direction and force of the push.vector ang_impulse,// Angular impulse vector representing the rotational force.integer is_local// Boolean. IfTRUE, forces are applied relative to the target's local axes; ifFALSE, relative to region axes.
);- Energy
- 10
Applies physical impulse (force) and ang_impulse (rotational force) to the specified target avatar or object.
Applies impulse and ang_impulse to object target
llPushObject(NULL_KEY, ZERO_VECTOR, ZERO_VECTOR, 0);Caveats
Section titled “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.
- In no-push areas an object can only push its owner or itself.
- 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.
- ang_impulse is ignored when applying to agents or their attachments.
- Energy is fully depleted by this function when either impulse or ang_impulse is nonzero. If impulse is nonzero, it will drain all energy in the object before ang_impulse is processed, causing the push to be purely linear.
- The push impact is diminished with distance by a factor of distance cubed.
Examples
Section titled “Examples”Example 1
// Pushes the collided object or avatar.default{ collision_start(integer num_detected) { llPushObject(llDetectedKey(0),<0,0,100>, <0,0,100>, TRUE); }}Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.