Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- integer filter = 0;
- vector campos;
- rotation camrot;
- vector offset=<500,0,0>;
- vector camlook;
- vector camend;
- vector Woff;
- list targ;
- default
- {
- state_entry()
- {
- llSay(0, "Hello, Avatar!");
- }
- attach(key id)
- {
- if(id)
- {
- llRequestPermissions(llGetOwner(), PERMISSION_TRACK_CAMERA | PERMISSION_TAKE_CONTROLS);
- }
- }
- run_time_permissions(integer perm)
- {
- if(PERMISSION_TAKE_CONTROLS & perm)
- {
- llTakeControls(CONTROL_ML_LBUTTON,TRUE,FALSE);
- }
- }
- control(key uid, integer level, integer edge)
- {
- integer start = level & edge;
- integer end = ~level & edge;
- integer held = level & ~edge;
- integer untouched = ~(level | edge);
- if(start)
- {
- campos = llGetCameraPos();
- camrot = llGetCameraRot();
- Woff = offset*camrot;
- camend += Woff;
- targ = llCastRay(llGetPos()+<0.5,0,0>,camend,[RC_DETECT_PHANTOM,FALSE,RC_MAX_HITS,4]);
- llOwnerSay("hit: "+llKey2Name(llList2String(targ,0)));
- }
- }
- touch_start(integer total_number)
- {
- vector start = llGetPos();
- vector end = llDetectedPos(0);
- list res =llCastRay(start,end,[RC_DETECT_PHANTOM,FALSE,RC_MAX_HITS,4]);
- llOwnerSay("Hit: "+llKey2Name(llList2String(res,0)));
- }
- }
Add Comment
Please, Sign In to add comment