llVolumeDetect

From Second Life Wiki
Revision as of 08:34, 11 September 2009 by Jera Saphir (talk | contribs) (Update on collisions between VolumeDetect enabled objects and avatars, collisions being one way.)
Jump to navigation Jump to search

Summary

Function: llVolumeDetect( integer detect );

If detect is TRUE, VolumeDetect is enabled, physical object and avatars can pass through the object. This works much like Phantom, but unlike Phantom, VolumeDetect objects trigger collision_start and collision_end events when interpenetrating. Collision events will trigger in any script in the object.

• integer detect TRUE enables, FALSE disables

Caveats

  • llDetectedLinkNumber will return 0 in collision_start and collision_end events of VolumeDetect objects (SVC-2996).
  • VolumeDetect objects will fall through the ground, whereas Phantom objects will not.
  • Does not work on attachments.
  • Only detects physical objects and avatars.
  • Can only be applied to the root prim.
  • When moving via llSetPos() by a loop of stages, collision events will not trigger.
  • Avatars colliding with objects with VolumeDetect enabled will generate collision_start and collision_end events in the object, but no collision events will be generated for the avatar or passed to any attachments the avatar is wearing.
All Issues ~ Search JIRA for related Bugs

Examples

<lsl>default {

   state_entry()
   {
       llVolumeDetect(TRUE); // Starts llVolumeDetect
   }
   collision_start(integer total_number)
   {
       llSay(0, "Detected!"); // Tells you when something penetrates the prim
   }
}</lsl>

See Also

Events

•  collision_start
•  collision
•  collision_end

Functions

•  llPassCollisions

Deep Notes

All Issues

~ Search JIRA for related Issues
   llDetectedLinkNumber returns 0 with llVolumeDetect(TRUE)

Signature

function void llVolumeDetect( integer detect );