ok thanks
here's what i have this works fine but i have 18 of these.
default
{
touch(integer total_number)
{
llLoadURL(llDetectedKey(0), "http://www.ejunto.com/sounds/roosevelt5b/rooseveltchs1-2.mp3","http://www.ejunto.com/sounds/roosevelt5b/rooseveltchs1-2.mp3"

;
llResetScript();
}
}
what i am try to do is adapt this script
integer channel; // channel that we are listening on
integer listener; // internal number representing the listener
key agentKey; // persons key who is using menu
string agentName; // person who is using menu
float timeout = 60; // number of seconds before dialogs time out
string menu = ""; // current menu being displayed to user
// menu buttons ...
list mainButtons = ["color", "taste"];
list colorButtons = ["red", "green", "blue"];
list tasteButtons = ["yummy", "sour", "sweet", "moldy"];
init()
{
llTargetOmega(<0,0,1>, 1, 1);
stopListening();
}
stopListening()
{
// stop listening
if(listener != 0)
{
llListenRemove(listener);
listener = 0;
}
// set to main menu
menu = "";
// forget current user
agentKey = NULL_KEY;
agentName = "";
channel = 0;
// stop timing out
llSetTimerEvent(0);
}
mainMenuHandler(string message)
{
menu = message;
if(message == "color"

llDialog(agentKey, "pick a color", colorButtons, channel);
else if(message == "taste"

llDialog(agentKey, "pick a taste", tasteButtons, channel);
else
{
llInstantMessage(agentKey, "Unknown menu item - " + message);
stopListening();
return;
}
// extend timeout
llSetTimerEvent(timeout);
}
colorMenuHandler(string message)
{
llSay(0, "My favorite color is " + message);
stopListening();
}
tasteMenuHandler(string message)
{
llSay(0, "I like things that taste " + message);
stopListening();
}
unknownMenuHandler(string message)
{
llInstantMessage(agentKey, "Unknown menu item - " + message);
stopListening();
}
default
{
state_entry()
{
init();
}
on_rez(integer start_param)
{
init();
}
touch_start(integer total_number)
{
// someone else using this?
if(listener != 0 && llDetectedKey(0) != agentKey)
{
llInstantMessage(llDetectedKey(0), agentName + " is using that."

;
return;
}
// remember who is using this
agentKey = llDetectedKey(0);
agentName = llDetectedName(0);
// if we are not listening already
if(listener == 0)
{
// set a random channel betweed -4000 and -2000
channel = (integer)(llFrand(2000) - 4000);
// start listening only to the agent on our hidden channel
listener = llListen(channel, agentName, agentKey, ""

;
}
// set menu to default
menu = "";
// show them buttons
llDialog(agentKey, "pick something", mainButtons, channel);
// set timeout
llSetTimerEvent(timeout);
}
listen(integer channel, string name, key id, string message)
{
// handle results based on menu end-user was viewing
if(menu == ""

mainMenuHandler(message);
else if(menu == "color"

colorMenuHandler(message);
else if(menu == "taste"

tasteMenuHandler(message);
else unknownMenuHandler(message);
}
timer()
{
// let agent know that we are not listening
llInstantMessage(agentKey, "Your menu has timed out!"

;
stopListening();
}
}
so that i can use the 18 urls in it hope this help you understand what I want here
im starting to get this I think I have all the menu tabs now I would like to add a Next and a back option if i can. then its just a matter of finding where to add in the url to each tab for that chapter
script as it is now
integer channel; // channel that we are listening on
integer listener; // internal number representing the listener
key agentKey; // persons key who is using menu
string agentName; // person who is using menu
float timeout = 60; // number of seconds before dialogs time out
string menu = ""; // current menu being displayed to user
// menu buttons ...
list mainButtons = ["part1", "part2"];
list part1Buttons = ["C1&2", "C3", "C4","C4&5","C6","C7","C8","C9&10"];
list part2Buttons = ["C11", "C12", "C13", "C14","C15","C16","C17&18","C19","C20&21"];
init()
{
llTargetOmega(<0,0,1>, 1, 1);
stopListening();
}
stopListening()
{
// stop listening
if(listener != 0)
{
llListenRemove(listener);
listener = 0;
}
// set to main menu
menu = "";
// forget current user
agentKey = NULL_KEY;
agentName = "";
channel = 0;
// stop timing out
llSetTimerEvent(0);
}
mainMenuHandler(string message)
{
menu = message;
if(message == "part1"

llDialog(agentKey, "pick a color", part1Buttons, channel);
else if(message == "part2"

llDialog(agentKey, "pick a taste", part2Buttons, channel);
else
{
llInstantMessage(agentKey, "Unknown menu item - " + message);
stopListening();
return;
}
// extend timeout
llSetTimerEvent(timeout);
}
colorMenuHandler(string message)
{
llSay(0, "My favorite color is " + message);
stopListening();
}
tasteMenuHandler(string message)
{
llSay(0, "I like things that taste " + message);
stopListening();
}
unknownMenuHandler(string message)
{
llInstantMessage(agentKey, "Unknown menu item - " + message);
stopListening();
}
default
{
state_entry()
{
init();
}
on_rez(integer start_param)
{
init();
}
touch_start(integer total_number)
{
// someone else using this?
if(listener != 0 && llDetectedKey(0) != agentKey)
{
llInstantMessage(llDetectedKey(0), agentName + " is using that."

;
return;
}
// remember who is using this
agentKey = llDetectedKey(0);
agentName = llDetectedName(0);
// if we are not listening already
if(listener == 0)
{
// set a random channel betweed -4000 and -2000
channel = (integer)(llFrand(2000) - 4000);
// start listening only to the agent on our hidden channel
listener = llListen(channel, agentName, agentKey, ""

;
}
// set menu to default
menu = "";
// show them buttons
llDialog(agentKey, "pick something", mainButtons, channel);
// set timeout
llSetTimerEvent(timeout);
}
listen(integer channel, string name, key id, string message)
{
// handle results based on menu end-user was viewing
if(menu == ""

mainMenuHandler(message);
else if(menu == "color"

colorMenuHandler(message);
else if(menu == "taste"

tasteMenuHandler(message);
else unknownMenuHandler(message);
}
timer()
{
// let agent know that we are not listening
llInstantMessage(agentKey, "Your menu has timed out!"

;
stopListening();
}
}