Could someone please help me with the code that would enable an object of the same name as the texture to be given when the central prim is touched a second time?
eg Avatar click on small (outer) display of Texture 1, Texture 1 shows in the center frame, Avatar clicks on center frame, center frame dispenses Object 1.
I would be really grateful!
Here is the script in its current form:
string direction = "forward";
list textures;
integer begin = 0;
integer start;
integer max = 0;
key current = "NULL";
settextures()
{
integer start = begin;
integer i = 1;
for(i;i < 13; i++)
{
if(begin < max )
{
llMessageLinked(LINK_SET,1,(string)i,llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE,begin)));
begin++;
}
else
{
begin = 0;
llMessageLinked(LINK_SET,1,(string)i,llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE,begin)));
begin++;
}
}
llSetText("Textures " + (string)(start) + " to " +(string)(begin - 1) + "\n \n \n \n \n \n",<1,1,1>,1);
}
settexturesback()
{ integer start = begin;
integer i = 0;
for(i;i < 13; i++)
{
if(begin > 0)
{
llMessageLinked(LINK_SET,1,(string)i,llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE,begin)));
begin--;
}
else
{
begin = max;
llMessageLinked(LINK_SET,1,(string)i,llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE,begin)));
begin--;
}
}
llSetText("Textures " + (string)(begin) + " to " +(string)(start) + "\n \n \n \n \n \n",<1,1,1>,1);
}
default
{
state_entry()
{
max = llGetInventoryNumber(INVENTORY_TEXTURE);
llOwnerSay("There are " + (string)max + " textures loaded."

llSetTexture("83a9eed2-51c0-0023-d77c-c5dd08d899d1",ALL_SIDES);
settextures();
}
on_rez(integer param)
{
llResetScript();
}
touch_start(integer total_number)
{
if(llDetectedKey(0) == llGetOwner())
{
if(current != "NULL"

{
if(llGetInventoryKey(llGetTexture(1)) != NULL_KEY)
{
llInstantMessage(llGetOwner(),llGetTexture(1));
llGiveInventory(llDetectedKey(0),llGetTexture(1));
}
else
{
llSay(0,"Texture not found in inventory"

}
}
}
}
link_message(integer sender,integer num, string mess,key id)
{
if(mess == "next"

{
direction = "forward";
settextures();
}
if(mess == "prev"

{
direction = "reverse";
settexturesback();
}
if(mess == "chosen"

{
llSetTexture(id,ALL_SIDES);
current = id;
}
}
changed(integer change)
{
if(change && CHANGED_INVENTORY)
{
max = llGetInventoryNumber(INVENTORY_TEXTURE);
llOwnerSay("There are " + (string)max + " textures loaded."

settextures();
}
}
}