LlDetectedPos
From Second Life Wiki
(Redirected from LSL llDetectedPos)
| LSL Portal | | | Functions | | | Events | | | Types | | | Operators | | | Constants | | | Flow Control | | | Script Library | | | Tutorials |
Description
Function: vector llDetectedPos( integer number );| 35 | Function ID |
| 0.0 | Delay |
| 10.0 | Energy |
Returns a vector that is the position of detected object number.
| • integer | number | – | Index of detection information |
number does not support negative indexes.
Returns <0.0, 0.0, 0.0> if number is not valid sensed object.
Specification
llDetected* functions can be called anywhere but will only return non-default values if called from within Detection events and functions called by Detection events.
Caveats
- Events that enable the llDetected* functions always return at least one detected item.
- Detection events are not raised if there is nothing detected (with the slight exception of no_sensor but it doesn't enable llDetected* functions).
- The event detection count parameter value is initially never less than 1.
Examples
//--// get sim position of Avatars in "say" range //--// //-- @@ = Contains code optimizations, see the following page for details //-- https://wiki.secondlife.com/wiki/User:Void_Singer/Optimizations default { state_entry() { llOwnerSay( "Touch me to get the positions of avatars in 'Say' range" ); } touch_start( integer vIntTouchCount ) { //-- trigger the sensor for avatars within 20m llSensor( "", "", AGENT, 20, PI ); } sensor( integer vIntFound ) { integer vIntCounter = 0; //-- loop through all avatars found do { llOwnerSay( llDetectedName( vIntCounter ) + " @ " //-- the next line gets the position of each found avatar + (string)llDetectedPos( vIntCounter ) ); }while (++vIntCounter < vIntFound); //-- @@ } //-- sensor does not detect owner if it's attached no_sensor() { llOwnerSay( "I couldn't find anybody" ); } }

