Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- default
- {
- on_rez(integer start)
- {
- llResetScript();
- }
- state_entry()
- {
- llSetPos(<0,0,0>);
- llSetLinkPrimitiveParamsFast(LINK_ALL_CHILDREN, [PRIM_POSITION, <0,0,0>, PRIM_SIZE, <0.5, 0.5, 0>]);
- llRequestPermissions(llGetOwner(), PERMISSION_TRACK_CAMERA);
- }
- run_time_permissions(integer perm)
- {
- llSetTimerEvent(0.05);
- }
- timer()
- {
- vector newPos = (llGetPos() - llGetCameraPos())/llGetCameraRot();
- float degrees_left = llAtan2(newPos.y, newPos.x)*RAD_TO_DEG/60;
- if(llFabs(degrees_left) < 1.0)
- {
- degrees_left = llAsin(degrees_left); // Assumes 60 Degree FOV
- }
- float degrees_above = llAtan2(newPos.z, newPos.x)*RAD_TO_DEG/60;
- if(llFabs(degrees_above) < 1.0)
- {
- degrees_above = llAsin(degrees_above); // Assumes 60 Degree FOV
- }
- float size = 1/(llVecDist(llGetPos(), llGetCameraPos()))*2;
- llSetLinkPrimitiveParamsFast(LINK_ALL_CHILDREN, [PRIM_POSITION, <0,degrees_left,degrees_above>, PRIM_SIZE, <size, size, 0>]);
- }
- changed(integer change)
- {
- if(change & CHANGED_TELEPORT)
- {
- llResetScript();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement