72 lines
2.3 KiB
Plaintext
72 lines
2.3 KiB
Plaintext
string offer_anim = "offerrose";
|
|
string child_rose = "BlueRose";
|
|
integer offering = 0;
|
|
|
|
// Link Commands
|
|
integer LINK_MENU_DISPLAY = 300;
|
|
integer LINK_MENU_RETURN = 320;
|
|
integer LINK_MENU_TIMEOUT = 330;
|
|
|
|
|
|
DisplayMenu(key id) {
|
|
string menuDescripter = "rosemenu";
|
|
string menuNavigate = "FALSE";
|
|
string menuText = "Your choice?";
|
|
string menuButtons = "Offer"; // The buttons, each button separated by a '~'.
|
|
|
|
llMessageLinked(LINK_THIS, LINK_MENU_DISPLAY, menuDescripter+"|"+menuNavigate+"|"+menuText+"|"+ menuButtons, id);
|
|
}
|
|
|
|
default
|
|
{
|
|
state_entry() {
|
|
llSetAlpha(0, ALL_SIDES);
|
|
key av = llGetOwner();
|
|
llRequestPermissions(av, PERMISSION_TRIGGER_ANIMATION | PERMISSION_ATTACH);
|
|
DisplayMenu(av);
|
|
}
|
|
|
|
on_rez(integer start_param) {
|
|
llResetScript();
|
|
}
|
|
|
|
touch_end(integer total_number) {
|
|
if (offering == 1) {
|
|
llSetAlpha(0, ALL_SIDES);
|
|
llStopAnimation(offer_anim);
|
|
llGiveInventory(llDetectedKey(0), child_rose);
|
|
offering = 0;
|
|
integer perm = llGetPermissions();
|
|
if(perm & PERMISSION_ATTACH) {
|
|
llDetachFromAvatar();
|
|
}
|
|
}
|
|
}
|
|
|
|
link_message(integer intSenderNum, integer num, string message, key id) {
|
|
if (num == LINK_MENU_RETURN) {
|
|
list returnMenu = llParseString2List(message, ["|"], []);
|
|
string menuDescriptor = llList2String(returnMenu,0);
|
|
|
|
if (menuDescriptor == "rosemenu") {
|
|
string item = llList2String(returnMenu,1);
|
|
if (item == "Offer") {
|
|
integer perm = llGetPermissions();
|
|
if(PERMISSION_TRIGGER_ANIMATION & perm) {
|
|
llStartAnimation(offer_anim);
|
|
llSleep(1.0);
|
|
llSetAlpha(1, ALL_SIDES);
|
|
llSleep(1.0);
|
|
offering = 1;
|
|
}
|
|
}
|
|
}
|
|
} else if (num == LINK_MENU_TIMEOUT) {
|
|
if (message == "rosemenu") {
|
|
key av = llGetOwner();
|
|
DisplayMenu(av);
|
|
}
|
|
}
|
|
}
|
|
}
|