Difference between revisions of "Category:LSL Link/Get"

From Second Life Wiki
Jump to navigation Jump to search
m
m
Line 17: Line 17:


vector GetLinkLocalPos(integer link)
vector GetLinkLocalPos(integer link)
{
{//This function may not produce a perfect result, expect there to be some drift.
     vector pos = llGetRootPosition();
     vector pos = llGetRootPosition();
     key k = llGetLinkKey(link);
     key k = llGetLinkKey(link);
Line 26: Line 26:
   
   
rotation GetLinkLocalRot(integer link)
rotation GetLinkLocalRot(integer link)
{
{//This function may not produce a perfect result, expect there to be some drift.
     rotation rot = llGetRootRotation();
     rotation rot = llGetRootRotation();
     key k = llGetLinkKey(link);
     key k = llGetLinkKey(link);

Revision as of 17:10, 27 April 2009

Useful Snippets

<lsl>key GetLinkCreator(integer link) {

   return llList2Key(llGetObjectDetails(llGetLinkKey(link), (list)OBJECT_CREATOR) + NULL_KEY, 0);

}

key GetLinkGroup(integer link) {

   return llList2Key(llGetObjectDetails(llGetLinkKey(link), (list)OBJECT_GROUP) + NULL_KEY, 0);

}

string GetLinkDesc(integer link) {

   return (string)llGetObjectDetails(llGetLinkKey(link), (list)OBJECT_DESC);

}

vector GetLinkLocalPos(integer link) {//This function may not produce a perfect result, expect there to be some drift.

   vector pos = llGetRootPosition();
   key k = llGetLinkKey(link);
   if(llGetLinkKey(!!llGetLinkNumber()) != k)
       return (llList2Vector(llGetObjectDetails(k, (list)OBJECT_POS) + pos, 0) - pos) / llGetRootRotation();
   return pos;

}

rotation GetLinkLocalRot(integer link) {//This function may not produce a perfect result, expect there to be some drift.

   rotation rot = llGetRootRotation();
   key k = llGetLinkKey(link);
   if(llGetLinkKey(!!llGetLinkNumber()) != k)
       return llList2Rot(llGetObjectDetails(k, (list)OBJECT_ROT) + rot, 0) / rot;
   return rot;

}</lsl>

Pages in category "LSL Link/Get"

The following 5 pages are in this category, out of 5 total.