llDetectedTouchFace
Revision as of 17:22, 23 August 2008 by Strife Onizuka (talk | contribs)
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Pre-release Documentation Warning! | |
This function is not available yet. This documentation was written prior to its final release so it may not match the final implementation. |
Summary
Function: integer llDetectedTouchFace( integer index );338 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns an integer that is the index of the face the avatar clicked on.
• integer | index | – | Index of detection information |
index does not support negative indexes. For the touch category of events only.
Caveats
- If index is out of bounds the script continues to execute without an error message.-1 is returned when...
- The avatar's viewer does not support face touch detection.
- The touch has moved off the surface of the prim.
- The triggering event is not a touch event.
Examples
<lsl> default {
touch_start(integer num_detected) { integer i; for (i = 0; i < num_detected; i++) { integer touchedFace = llDetectedTouchFace(i);
if (touchedFace == -1) { llWhisper(0, "Sorry, your viewer doesn't support touched faces."); } else { // Store away the original color vector oldColor = llGetColor(touchedFace);
// Flash white and black on the touched face llSetColor(<1., 1., 1.>, touchedFace); llSleep(0.1); llSetColor(<0., 0., 0.>, touchedFace); llSleep(0.1); // Put the color back to how we found it. llSetColor(oldColor, touchedFace); } // if ... } // for ... } // touch_start
}
</lsl>