Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- setup()
- {
- if (llGetAttached()!=0) //if we are not already attached
- llRequestPermissions(llGetOwner(),PERMISSION_TAKE_CONTROLS | PERMISSION_TRACK_CAMERA|PERMISSION_TRIGGER_ANIMATION);
- }
- default
- {
- state_entry()
- {
- llOwnerSay("reset");
- setup();
- }
- on_rez(integer param)
- {
- setup();
- }
- attach(key id)
- {
- if (id != NULL_KEY)
- setup();
- else
- llReleaseControls();
- }
- run_time_permissions(integer perm)
- {
- if(PERMISSION_TAKE_CONTROLS |PERMISSION_TRIGGER_ANIMATION & perm)
- llTakeControls(CONTROL_ML_LBUTTON, TRUE, FALSE);
- llStartAnimation("hold");
- } //run_time_permissions
- control(key avatar, integer levels, integer edges)
- {
- if ((levels & CONTROL_ML_LBUTTON) )
- { llStopAnimation("hold");
- llStartAnimation("joust");
- rotation rot=llGetCameraRot(); //in mouselook, use direction you are looking!
- vector start=llGetPos()+<0.0,0,.9>*rot; //start at avatar head level
- vector end = start+<4.0,0,0>*rot; //continue for 256 meters in that direction
- list hit = llCastRay(start,end,[RC_DETECT_PHANTOM,FALSE]); //detect anything on that line
- if (llList2Integer(hit,-1)>0) //if there was a hit
- {
- key id=llList2Key(hit,0);
- list details = llGetObjectDetails(id, ([OBJECT_NAME, OBJECT_DESC, OBJECT_POS, OBJECT_ROT, OBJECT_VELOCITY, OBJECT_OWNER, OBJECT_GROUP, OBJECT_CREATOR]));
- llRegionSay(0x80000000 | (integer) ( "0x" + (string)llList2String(details, 5)),
- llList2String(details, 0))
- // +
- //
- // "\nOwner: " +llKey2Name( llList2String(details, 5))
- //
- ;}
- }
- else{ llStopAnimation("joust"); llStartAnimation("hold");}
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement