// SPDX-License-Identifier: MIT // Copyright (c) 2026 Incoprea // Check texture rotation against quarter turns // Not compiled or tested in-world // Setup: Put in a spare owned prim or linkset root. Touch the face or component to inspect. Child scripts may consume touches; face-based tools require a viewer that supplies touched-face data. // Stop / restore: Remove/disable. Inspectors read state and report only to the owner; they do not change the build. // Notes: Uses the stored texture rotation, not the prim’s world rotation. The result is a proposed correction only. // License: see LICENSE in this distribution. // Original Incoprea. MIT. Owner-only live inspection. default { touch_start(integer detectedCount) { if(llDetectedKey(0)!=llGetOwner())return; integer link=llDetectedLinkNumber(0); if(link==0)link=LINK_THIS; integer face=llDetectedTouchFace(0); if(face<0) { llOwnerSay("Touch a face."); return; } float angle=llList2Float(llGetLinkPrimitiveParams(link,[PRIM_TEXTURE,face]),3); float target=llRound(angle/PI_BY_TWO)*PI_BY_TWO; llOwnerSay("Texture degrees="+(string)(angle*RAD_TO_DEG)+" nearest quarter turn="+(string)(target*RAD_TO_DEG)+" correction="+(string)((target-angle)*RAD_TO_DEG)); } }