LlDetectedTouchPos

De DigiWiki.

default
{
    touch_start(integer pos_detected)
    {
        integer i = 0;
        for(; i<pos_detected; ++i)
            llWhisper(0, "Pos clicked: " + (string)llDetectedTouchPos(i));
    }
}
vector GetRealTouchPos(vector pos)
{
    //By Ariu Arai for free use to anyone
    //Returns a useful HUD Position Vector from the llDetectedTouchPos(); function
    //USE: vector pos = GetRealTouchPos(llDetectedTouchPos(0)); .. Etc.
    //This function is intended to be used to move child prims to where the user clicks. This does not work on the root prim.
 
    integer point = llGetAttached();
    vector offset;
 
    if(point == ATTACH_HUD_TOP_RIGHT)offset = <1, .933, -0.5>;
    else if(point == ATTACH_HUD_TOP_CENTER)offset = <1, 0, -0.5>;
    else if(point == ATTACH_HUD_TOP_LEFT)offset = <1, -.933, -0.5>;
    else if(point == ATTACH_HUD_BOTTOM_LEFT)offset = <1, -.933, 0.5>;
    else if(point == ATTACH_HUD_BOTTOM)offset = <1, 0.0, 0.5>;
    else if(point == ATTACH_HUD_BOTTOM_RIGHT)offset = <1, .933, 0.5>;
 
    //return (pos - llGetLocalPos()) + (offset * llGetLocalRot());
    return ((offset - llGetLocalPos()) + pos) / llGetLocalRot();
}
Outils personnels
  • Cette page a été consultée 563 fois.
donate
Google Ads