Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

linked prim numbering

Cherry Hainsworth
Registered User
Join date: 31 Jul 2006
Posts: 125
01-01-2008 17:30
Dialog options to show you the link number or face numbers of prims in a linked set (up to ten prims).

I'm sure it has been done more elegantly, but I couldn't find a free script to do this ... and couldn't get it to work with more economical code :/

Feel free to post improvements - and to use it, if you wish
:)

Sorry, can't fix the indents. Text file attached below.

CODE

// Textures the prims in a linked set with their link numbers or face numbers.
// Cherry Hainsworth, January 2008 // Free to copy.

integer listenkey;
integer LinkNumber;

string nought = "05fff99d-c061-f4bc-3a73-794e4c764e71";
string one = "1589a23c-47a0-9326-b43e-971e21d27f54";
string two = "6015e61e-7f4b-1fc6-e92e-dd7f8737192d";
string three = "1f4c3534-8116-1b5f-1db0-455ade42d044";
string four = "138a986d-f1ef-a995-26b4-ec3014d613c3";
string five = "ba243aec-2f16-83a5-be6b-0ec45c735b31";
string six = "76ea1ef0-a78b-934f-4f74-f7eb3401ed6c";
string seven = "8fc340ec-398a-baa0-4e25-03ca1b7b909a";
string eight = "4dbffb7c-05b1-cd76-59d9-0bfeac4fd495";
string nine = "d02525d2-c17a-7f4f-9eb2-9cb24e53e262";


// ----------------------------------------------------

//function
// ----------------------------------------------------
nameFaces()
{
llSetLinkColor(LINK_SET, <1.0,1.0,1.0>, ALL_SIDES);
llSetLinkTexture(LINK_SET, nought, 0);
llSetLinkTexture(LINK_SET, one, 1);
llSetLinkTexture(LINK_SET, two, 2);
llSetLinkTexture(LINK_SET, three, 3);
llSetLinkTexture(LINK_SET, four, 4);
llSetLinkTexture(LINK_SET, five, 5);
llSetLinkTexture(LINK_SET, six, 6);
llSetLinkTexture(LINK_SET, seven, 7);
llSetLinkTexture(LINK_SET, eight, 8);
llSetLinkTexture(LINK_SET, nine, 9);
}
// ----------------------------------------------------

//function
// ----------------------------------------------------
numberLinks()
{
LinkNumber = llGetLinkNumber();
llSetLinkPrimitiveParams(LINK_SET, [PRIM_COLOR, ALL_SIDES, <1.0,1.0,0.0>, 1.0]);
llSetLinkTexture(0, nought, ALL_SIDES);
llSetLinkTexture(1, one, ALL_SIDES);
llSetLinkTexture(2, two, ALL_SIDES);
llSetLinkTexture(3, three, ALL_SIDES);
llSetLinkTexture(4, four, ALL_SIDES);
llSetLinkTexture(5, five, ALL_SIDES);
llSetLinkTexture(6, six, ALL_SIDES);
llSetLinkTexture(7, seven, ALL_SIDES);
llSetLinkTexture(8, eight, ALL_SIDES);
llSetLinkTexture(9, nine, ALL_SIDES);

}

// ----------------------------------------------------




// ----------------------------------------------------

default{

touch_start( integer num )
{
if ( llDetectedKey(0) == llGetOwner() )
{
listenkey = llListen( 8192, "", llGetOwner(), "" );
llSetTimerEvent(60);
llDialog( llDetectedKey(0), "Number Linked Prims :",
[ "Name Faces", "Link Numbers" ], 8192 );
}
}
timer()
{
llListenRemove( listenkey );
llSetTimerEvent( 0 );
}
listen ( integer channel, string name, key id, string message )
{
llListenRemove( listenkey );
if ( message == "Name Faces" )
{
llMessageLinked( LINK_SET, 0 , "Name Faces" , NULL_KEY );
nameFaces();
}
if ( message == "Link Numbers" )
{
llMessageLinked( LINK_SET, 0 , "Link Numbers" , NULL_KEY );
numberLinks();
}
}



}
Cherry Hainsworth
Registered User
Join date: 31 Jul 2006
Posts: 125
01-14-2008 19:20
Dialog options to show you the link number or face numbers of prims in a linked set (up to ten prims).

I'm sure it has been done more elegantly, but I couldn't find a free script to do this ... and couldn't get it to work with more economical code :/

Feel free to post improvements - and to use it, if you wish
:)

From: someone
CODE

// Textures the prims in a linked set with their link numbers or face numbers.
// Cherry Hainsworth, January 2008

integer listenkey;
integer LinkNumber;

string nought = "05fff99d-c061-f4bc-3a73-794e4c764e71";
string one = "1589a23c-47a0-9326-b43e-971e21d27f54";
string two = "6015e61e-7f4b-1fc6-e92e-dd7f8737192d";
string three = "1f4c3534-8116-1b5f-1db0-455ade42d044";
string four = "138a986d-f1ef-a995-26b4-ec3014d613c3";
string five = "ba243aec-2f16-83a5-be6b-0ec45c735b31";
string six = "76ea1ef0-a78b-934f-4f74-f7eb3401ed6c";
string seven = "8fc340ec-398a-baa0-4e25-03ca1b7b909a";
string eight = "4dbffb7c-05b1-cd76-59d9-0bfeac4fd495";
string nine = "d02525d2-c17a-7f4f-9eb2-9cb24e53e262";


// ----------------------------------------------------

//function
// ----------------------------------------------------
nameFaces()
{
llSetLinkColor(LINK_SET, <1.0,1.0,1.0>, ALL_SIDES);
llSetLinkTexture(LINK_SET, nought, 0);
llSetLinkTexture(LINK_SET, one, 1);
llSetLinkTexture(LINK_SET, two, 2);
llSetLinkTexture(LINK_SET, three, 3);
llSetLinkTexture(LINK_SET, four, 4);
llSetLinkTexture(LINK_SET, five, 5);
llSetLinkTexture(LINK_SET, six, 6);
llSetLinkTexture(LINK_SET, seven, 7);
llSetLinkTexture(LINK_SET, eight, 8);
llSetLinkTexture(LINK_SET, nine, 9);
}
// ----------------------------------------------------

//function
// ----------------------------------------------------
numberLinks()
{
LinkNumber = llGetLinkNumber();
llSetLinkPrimitiveParams(LINK_SET, [PRIM_COLOR, ALL_SIDES, <1.0,1.0,0.0>, 1.0]);
llSetLinkTexture(0, nought, ALL_SIDES);
llSetLinkTexture(1, one, ALL_SIDES);
llSetLinkTexture(2, two, ALL_SIDES);
llSetLinkTexture(3, three, ALL_SIDES);
llSetLinkTexture(4, four, ALL_SIDES);
llSetLinkTexture(5, five, ALL_SIDES);
llSetLinkTexture(6, six, ALL_SIDES);
llSetLinkTexture(7, seven, ALL_SIDES);
llSetLinkTexture(8, eight, ALL_SIDES);
llSetLinkTexture(9, nine, ALL_SIDES);

}

// ----------------------------------------------------




// ----------------------------------------------------

default{

touch_start( integer num )
{
if ( llDetectedKey(0) == llGetOwner() )
{
listenkey = llListen( 8192, "", llGetOwner(), "" );
llSetTimerEvent(60);
llDialog( llDetectedKey(0), "Number Linked Prims :",
[ "Name Faces", "Link Numbers" ], 8192 );
}
}
timer()
{
llListenRemove( listenkey );
llSetTimerEvent( 0 );
}
listen ( integer channel, string name, key id, string message )
{
llListenRemove( listenkey );
if ( message == "Name Faces" )
{
llMessageLinked( LINK_SET, 0 , "Name Faces" , NULL_KEY );
nameFaces();
}
if ( message == "Link Numbers" )
{
llMessageLinked( LINK_SET, 0 , "Link Numbers" , NULL_KEY );
numberLinks();
}
}



}