FindScreenWidth

From Second Life Wiki
Jump to navigation Jump to search

The script below will give the width of the screen in meters by touching anywhere on the visible face, given that the prim is a box with zero rotation and attached at one of the corner HUD attachment points.

//Find Screen Width
//By Darwin Recreant

default
{
    touch_start(integer total_number)
    {
        vector scale       = llGetScale();
        vector off_point   = llGetLocalPos();
        vector face_pos    = llDetectedTouchST(0);
        vector screen_pos  = llDetectedTouchPos(0);
        
        float screen_width = ((face_pos.x - .5) * scale.y - off_point.y + screen_pos.y) * 2;
        
        llOwnerSay((string)screen_width);
    }
}