Difference between revisions of "LlDetectedPos"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
Void Singer (talk | contribs) |
Void Singer (talk | contribs) m (optimized my previous example anf added link to descriptions thereof) |
||
Line 14: | Line 14: | ||
//--// get sim position of Avatars in "say" range //--// | //--// get sim position of Avatars in "say" range //--// | ||
default{ | //-- @@ = Contains code optimizations, see the following page for details | ||
state_entry(){ | //-- wiki.secondlife.com/wiki/User_talk:Void_Singer#Coding_Practices_Part_2_.28optimizations.29 | ||
default | |||
{ | |||
state_entry() | |||
{ | |||
llOwnerSay( "Touch me to get the positions of avatars in 'Say' range" ); | llOwnerSay( "Touch me to get the positions of avatars in 'Say' range" ); | ||
} | } | ||
touch_start( integer vIntTouchCount ){ | touch_start( integer vIntTouchCount ) | ||
{ | |||
//-- trigger the sensor for avatars within 20m | //-- trigger the sensor for avatars within 20m | ||
llSensor( "", "", AGENT, 20, PI ); | llSensor( "", "", AGENT, 20, PI ); | ||
} | } | ||
sensor( integer vIntFound ){ | sensor( integer vIntFound ) | ||
{ | |||
integer vIntCounter = 0; | integer vIntCounter = 0; | ||
//-- loop through all avatars found | //-- loop through all avatars found | ||
do{ | do | ||
{ | |||
llOwnerSay( llDetectedName( vIntCounter ) | llOwnerSay( llDetectedName( vIntCounter ) | ||
+ " @ " | + " @ " | ||
//-- the next line gets the position of each found avatar | //-- the next line gets the position of each found avatar | ||
+ (string)llDetectedPos( vIntCounter ) ); | + (string)llDetectedPos( vIntCounter ) ); | ||
}while (++vIntCounter < vIntFound); | }while (++vIntCounter < vIntFound); //-- @@ | ||
} | } | ||
//-- sensor does not detect owner if it's attached | //-- sensor does not detect owner if it's attached | ||
no_sensor(){ | no_sensor() | ||
{ | |||
llOwnerSay( "I couldn't find anybody" ); | llOwnerSay( "I couldn't find anybody" ); | ||
} | } |
Revision as of 23:01, 16 October 2007
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: vector llDetectedPos( integer number );35 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a vector that is the position of detected object number.
• integer | number |
number does not support negative indexes. Returns <0.0, 0.0, 0.0> if number is not valid sensed object.
Caveats
- If number is out of bounds the script continues to execute without an error message.
Examples
//--// get sim position of Avatars in "say" range //--// //-- @@ = Contains code optimizations, see the following page for details //-- wiki.secondlife.com/wiki/User_talk:Void_Singer#Coding_Practices_Part_2_.28optimizations.29 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" ); } }
See Also
Articles
• | Detected |