Get dialogs working.

This commit is contained in:
zontreck 2024-06-03 02:31:23 -07:00
parent 7b0ad9f60b
commit 6e28878b6a
2 changed files with 88 additions and 29 deletions

62
includes/header.lsl Normal file
View file

@ -0,0 +1,62 @@
integer LINK_SIGNAL_GEN_CHANNEL = 0601241;
integer LINK_SIGNAL_CHANNEL_BACK = 0601242;
integer LINK_SIGNAL_SHOW_MENU = 0601243;
integer LINK_SIGNAL_MENU_TIMEOUT = 0601244;
integer LINK_SIGNAL_REREGISTER_MENUS= 0601245;
integer LINK_SIGNAL_QUERY_MENU = 0602241;
integer LINK_SIGNAL_REGISTER_MENU = 0602242;
integer LINK_SIGNAL_RESET = 0602243;
integer LINK_SIGNAL_MENU_DATA = 0602244;
string PREVIOUS_MENU = "<--";
string EXIT_MENU = "-exit-";
string NEXT_MENU = "-->";
string decodeLM(integer iSignal) {
switch(iSignal) {
case LINK_SIGNAL_GEN_CHANNEL: {
return "LINK_SIGNAL_GEN_CHANNEL";
}
case LINK_SIGNAL_CHANNEL_BACK: {
return "LINK_SIGNAL_CHANNEL_BACK";
}
case LINK_SIGNAL_SHOW_MENU: {
return "LINK_SIGNAL_SHOW_MENU";
}
case LINK_SIGNAL_MENU_TIMEOUT: {
return "LINK_SIGNAL_MENU_TIMEOUT";
}
case LINK_SIGNAL_REREGISTER_MENUS: {
return "LINK_SIGNAL_REREGISTER_MENUS";
}
case LINK_SIGNAL_QUERY_MENU: {
return "LINK_SIGNAL_QUERY_MENU";
}
case LINK_SIGNAL_REGISTER_MENU: {
return "LINK_SIGNAL_REGISTER_MENU";
}
case LINK_SIGNAL_RESET: {
return "LINK_SIGNAL_RESET";
}
case LINK_SIGNAL_MENU_DATA: {
return "LINK_SIGNAL_MENU_DATA";
}
default: {
return (string)iSignal;
}
}
}
RegisterMenuButton(string sMenu, string sButton) {
llMessageLinked(LINK_SET, LINK_SIGNAL_REGISTER_MENU, sButton, sMenu);
}
SetMenuPrompt(string sMenu, string sPromptText) {
llMessageLinked(LINK_SET, LINK_SIGNAL_MENU_DATA, llList2Json(JSON_OBJECT, ["prompt", sPromptText]), sMenu);
}
showMenu(key kID, string sMenu, integer iPage) {
llMessageLinked(LINK_SET, LINK_SIGNAL_SHOW_MENU, llList2Json(JSON_OBJECT, ["menu", sMenu, "page", iPage]), kID);
}