Comment and formatting changes; no actual code changes.
- Add spaces between functions. - Add comments on numeric codes and a few others. - Reformat lists and one function. - Remove spaces at EOL. - Use actual copyright symbol.
This commit is contained in:
parent
ef3adcce5e
commit
2488349a1b
26 changed files with 500 additions and 203 deletions
|
@ -1,14 +1,14 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
||||
// For use attaching particle chains to LockGuard V2 compatible cuffs such as Open Collar
|
||||
// This script should be placed inside the prim that contains your poses and props.
|
||||
// Inspiration and function (not code) from the Bright CISS system by Shan Bright & Innula Zenovka.
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
||||
string product = "AVsitter™ Xcite!";
|
||||
string version = "1.02";
|
||||
string notecard_name = "[AV]Xcite_settings";
|
||||
|
@ -27,6 +27,7 @@ string CURRENT_POSE;
|
|||
list TIMERS;
|
||||
list SITTERS;
|
||||
integer DEBUG;
|
||||
|
||||
Out(integer level, string out)
|
||||
{
|
||||
if (verbose >= level)
|
||||
|
@ -34,7 +35,9 @@ Out(integer level, string out)
|
|||
llOwnerSay(llGetScriptName() + "[" + version + "]:" + out);
|
||||
}
|
||||
}
|
||||
|
||||
key key_request;
|
||||
|
||||
string parse_text(string say)
|
||||
{
|
||||
integer i;
|
||||
|
@ -49,10 +52,12 @@ string parse_text(string say)
|
|||
}
|
||||
return say;
|
||||
}
|
||||
|
||||
string strReplace(string str, string search, string replace)
|
||||
{
|
||||
return llDumpList2String(llParseStringKeepNulls(str, [search], []), replace);
|
||||
}
|
||||
|
||||
default
|
||||
{
|
||||
state_entry()
|
||||
|
@ -61,6 +66,7 @@ default
|
|||
Out(0, "Loading...");
|
||||
notecard_query = llGetNotecardLine(notecard_name, 0);
|
||||
}
|
||||
|
||||
changed(integer change)
|
||||
{
|
||||
if (change & CHANGED_INVENTORY)
|
||||
|
@ -78,6 +84,7 @@ default
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
link_message(integer sender, integer num, string msg, key id)
|
||||
{
|
||||
if (sender == llGetLinkNumber())
|
||||
|
@ -142,6 +149,7 @@ default
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
timer()
|
||||
{
|
||||
integer i;
|
||||
|
@ -154,6 +162,7 @@ default
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
dataserver(key query_id, string data)
|
||||
{
|
||||
if (query_id == notecard_query)
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
||||
string product;
|
||||
string version = "2.2";
|
||||
integer RELAY_CHANNEL = -1812221819;
|
||||
|
@ -40,6 +40,7 @@ string iconSubtract = "[➖]";
|
|||
string pagedMenuText;
|
||||
list pagedMenuButtons;
|
||||
integer verbose = 0;
|
||||
|
||||
Out(integer level, string out)
|
||||
{
|
||||
if (verbose >= level)
|
||||
|
@ -47,20 +48,24 @@ Out(integer level, string out)
|
|||
llOwnerSay(llGetScriptName() + "[" + version + "]:" + out);
|
||||
}
|
||||
}
|
||||
|
||||
string strReplace(string str, string search, string replace)
|
||||
{
|
||||
return llDumpList2String(llParseStringKeepNulls(str, [search], []), replace);
|
||||
}
|
||||
|
||||
list order_buttons(list buttons)
|
||||
{
|
||||
return llList2List(buttons, -3, -1) + llList2List(buttons, -6, -4) + llList2List(buttons, -9, -7) + llList2List(buttons, -12, -10);
|
||||
}
|
||||
|
||||
relay(key av, string msg)
|
||||
{
|
||||
msg = "RLV," + (string)av + "," + msg;
|
||||
Out(1, "Sending RLV Command: " + msg);
|
||||
llSay(RELAY_CHANNEL, msg);
|
||||
}
|
||||
|
||||
remove_menu(string worn, list slots)
|
||||
{
|
||||
list menu_items;
|
||||
|
@ -81,6 +86,7 @@ remove_menu(string worn, list slots)
|
|||
}
|
||||
new_paged_menu(menu + " menu for " + llKey2Name(SLAVE) + "\n\nThe captive" + text, menu_items);
|
||||
}
|
||||
|
||||
new_paged_menu(string text, list menu_items)
|
||||
{
|
||||
pagedMenuText = text;
|
||||
|
@ -88,6 +94,7 @@ new_paged_menu(string text, list menu_items)
|
|||
menuPage = 0;
|
||||
paged_menu();
|
||||
}
|
||||
|
||||
paged_menu()
|
||||
{
|
||||
list MypagedMenuButtons = pagedMenuButtons;
|
||||
|
@ -116,12 +123,14 @@ paged_menu()
|
|||
Out(1, "paged menu:" + llDumpList2String(MypagedMenuButtons, ","));
|
||||
dialog(pagedMenuText, ["[BACK]"] + MypagedMenuButtons);
|
||||
}
|
||||
|
||||
dialog(string text, list buttons)
|
||||
{
|
||||
while (llGetListLength(buttons) % 3)
|
||||
buttons += " ";
|
||||
llDialog(CONTROLLER, "AVsitter™ RLV " + product + " " + version + "\n\n" + text, order_buttons(buttons), menu_channel);
|
||||
}
|
||||
|
||||
remove_script(string reason)
|
||||
{
|
||||
string message = "\n" + llGetScriptName() + " ==Script Removed==\n\n" + reason;
|
||||
|
@ -129,11 +138,13 @@ remove_script(string reason)
|
|||
llInstantMessage(llGetOwner(), message);
|
||||
llRemoveInventory(llGetScriptName());
|
||||
}
|
||||
|
||||
main_menu()
|
||||
{
|
||||
menu = "";
|
||||
dialog("Un/Dress menu for " + llKey2Name(SLAVE), ["[BACK]", "Browse #RLV", "Fast Strip", "Undress", "Detach"]);
|
||||
}
|
||||
|
||||
default
|
||||
{
|
||||
state_entry()
|
||||
|
@ -148,6 +159,7 @@ default
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
state running
|
||||
{
|
||||
state_entry()
|
||||
|
@ -185,6 +197,7 @@ state running
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
listen(integer channel, string name, key id, string msg)
|
||||
{
|
||||
Out(1, "Listen Received: " + msg);
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
||||
string product = "AVsitter™ RLV";
|
||||
string version = "2.2";
|
||||
integer ignorenextswap;
|
||||
|
@ -72,6 +72,7 @@ integer subControl;
|
|||
string ping;
|
||||
integer captureOnAsk = TRUE;
|
||||
integer verbose = 0;
|
||||
|
||||
Out(integer level, string out)
|
||||
{
|
||||
if (verbose >= level)
|
||||
|
@ -79,19 +80,23 @@ Out(integer level, string out)
|
|||
llOwnerSay(llGetScriptName() + "[" + version + "]:" + out);
|
||||
}
|
||||
}
|
||||
|
||||
string strReplace(string str, string search, string replace)
|
||||
{
|
||||
return llDumpList2String(llParseStringKeepNulls(str, [search], []), replace);
|
||||
}
|
||||
|
||||
list order_buttons(list buttons)
|
||||
{
|
||||
return llList2List(buttons, -3, -1) + llList2List(buttons, -6, -4) + llList2List(buttons, -9, -7) + llList2List(buttons, -12, -10);
|
||||
}
|
||||
|
||||
relay(key av, string msg)
|
||||
{
|
||||
msg = "RLV," + (string)av + "," + msg;
|
||||
llSay(RELAY_CHANNEL, msg);
|
||||
}
|
||||
|
||||
string humantime()
|
||||
{
|
||||
integer hours = TimelockSecUntilRelease / 3600;
|
||||
|
@ -119,6 +124,7 @@ string humantime()
|
|||
}
|
||||
return hours_text + minutes_text + seconds_text;
|
||||
}
|
||||
|
||||
Timelock_menu()
|
||||
{
|
||||
menu = "Timelock";
|
||||
|
@ -150,6 +156,7 @@ Timelock_menu()
|
|||
}
|
||||
dialog(text, ["[BACK]", pauseButton, hidButton] + menu_items);
|
||||
}
|
||||
|
||||
relay_select_menu()
|
||||
{
|
||||
menu = "SELECT";
|
||||
|
@ -173,6 +180,7 @@ relay_select_menu()
|
|||
}
|
||||
dialog(text, menu_items);
|
||||
}
|
||||
|
||||
playpose(string pose, string target_sitter)
|
||||
{
|
||||
if (pose)
|
||||
|
@ -181,6 +189,7 @@ playpose(string pose, string target_sitter)
|
|||
llMessageLinked(LINK_SET, 90000, pose, target_sitter);
|
||||
}
|
||||
}
|
||||
|
||||
rlv_top_menu()
|
||||
{
|
||||
menu = "";
|
||||
|
@ -240,6 +249,7 @@ rlv_top_menu()
|
|||
}
|
||||
dialog(text, extra + menu_items);
|
||||
}
|
||||
|
||||
capture_attempt(key id, string target_sitter)
|
||||
{
|
||||
if (RLV_ON)
|
||||
|
@ -258,10 +268,12 @@ capture_attempt(key id, string target_sitter)
|
|||
playpose(SUBPOSE, id);
|
||||
}
|
||||
}
|
||||
|
||||
dialog(string text, list buttons)
|
||||
{
|
||||
llDialog(CONTROLLER, product + " " + version + "\n\n" + text, order_buttons(buttons), menu_channel);
|
||||
}
|
||||
|
||||
reset()
|
||||
{
|
||||
CAPTIVES = [];
|
||||
|
@ -273,6 +285,7 @@ reset()
|
|||
TimelockSecUntilRelease = defaultTimelock;
|
||||
hovertext();
|
||||
}
|
||||
|
||||
unsit_all()
|
||||
{
|
||||
integer i = llGetNumberOfPrims();
|
||||
|
@ -282,6 +295,7 @@ unsit_all()
|
|||
i--;
|
||||
}
|
||||
}
|
||||
|
||||
release_all()
|
||||
{
|
||||
while (llGetListLength(CAPTIVES))
|
||||
|
@ -289,12 +303,14 @@ release_all()
|
|||
release(llList2Key(CAPTIVES, 1), FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
stop()
|
||||
{
|
||||
release_all();
|
||||
unsit_all();
|
||||
reset();
|
||||
}
|
||||
|
||||
release(key SLAVE, integer allowUnsit)
|
||||
{
|
||||
integer index = llListFindList(CAPTIVES, [SLAVE]);
|
||||
|
@ -314,6 +330,7 @@ release(key SLAVE, integer allowUnsit)
|
|||
reset();
|
||||
}
|
||||
}
|
||||
|
||||
start_relay_search()
|
||||
{
|
||||
DETECTED_AVATAR_KEYS = [];
|
||||
|
@ -324,6 +341,7 @@ start_relay_search()
|
|||
SEARCHhandle = llListen(RELAY_SEARCH_CHANNEL, "", "", "");
|
||||
llSetTimerEvent(1.5);
|
||||
}
|
||||
|
||||
remove_script(string reason)
|
||||
{
|
||||
string message = "\n" + llGetScriptName() + " ==Script Removed==\n\n" + reason;
|
||||
|
@ -334,6 +352,7 @@ remove_script(string reason)
|
|||
llRemoveInventory(llGetScriptName());
|
||||
}
|
||||
}
|
||||
|
||||
new_controller(key id)
|
||||
{
|
||||
CONTROLLER = id;
|
||||
|
@ -341,6 +360,7 @@ new_controller(key id)
|
|||
llListenRemove(menu_handle);
|
||||
menu_handle = llListen(menu_channel = ((integer)llFrand(2147483646) + 1) * -1, "", CONTROLLER, "");
|
||||
}
|
||||
|
||||
no_sensor_results()
|
||||
{
|
||||
expecting_relay_results = FALSE;
|
||||
|
@ -351,6 +371,7 @@ no_sensor_results()
|
|||
}
|
||||
dialog("No avatars found in range!", menu_items);
|
||||
}
|
||||
|
||||
get_unique_channels()
|
||||
{
|
||||
RELAY_SEARCH_CHANNEL = (integer)llFrand(999999999) + 1;
|
||||
|
@ -360,6 +381,7 @@ get_unique_channels()
|
|||
llListenRemove(relay_handle);
|
||||
relay_handle = llListen(RELAY_CHANNEL, "", "", ping = "ping," + (string)llGetKey() + ",ping,ping");
|
||||
}
|
||||
|
||||
check_submissive()
|
||||
{
|
||||
relay(SLAVE, "@versionnew=" + (string)RELAY_CHECK_CHANNEL);
|
||||
|
@ -367,6 +389,7 @@ check_submissive()
|
|||
llSensorRepeat("", llGetOwner(), PASSIVE, 0.1, PI, 2);
|
||||
slaveName = llKey2Name(SLAVE);
|
||||
}
|
||||
|
||||
select_submissive_rlv()
|
||||
{
|
||||
menu = "SUB_SELECT";
|
||||
|
@ -403,6 +426,7 @@ select_submissive_rlv()
|
|||
}
|
||||
dialog(text, menu_items);
|
||||
}
|
||||
|
||||
find_seat(key id, integer index, string msg, integer captureSub)
|
||||
{
|
||||
if (~index)
|
||||
|
@ -466,10 +490,12 @@ find_seat(key id, integer index, string msg, integer captureSub)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
info_dialog(key id, string text)
|
||||
{
|
||||
llDialog(id, product + " " + version + "\n\nSorry, " + text + ".\n", [], -7947386);
|
||||
}
|
||||
|
||||
hovertext()
|
||||
{
|
||||
string text;
|
||||
|
@ -532,10 +558,12 @@ hovertext()
|
|||
}
|
||||
llMessageLinked(LINK_SET, 90014, llDumpList2String([CONTROLLER, llDumpList2String(CAPTIVES, ",")], "|"), "");
|
||||
}
|
||||
|
||||
ask_role(key id)
|
||||
{
|
||||
llDialog(id, product + " " + version + "\n\nPlease select your role:\n", ["Dominant", "Submissive"], ASKROLE_CHANEL);
|
||||
}
|
||||
|
||||
back(key id)
|
||||
{
|
||||
if (~llListFindList(SITTING_AVATARS, [id]))
|
||||
|
@ -547,6 +575,7 @@ back(key id)
|
|||
llMessageLinked(LINK_THIS, 90007, "", id);
|
||||
}
|
||||
}
|
||||
|
||||
integer isSub(key id)
|
||||
{
|
||||
integer index = llListFindList(DESIGNATIONS_NOW, [id]);
|
||||
|
@ -560,6 +589,7 @@ integer isSub(key id)
|
|||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
default
|
||||
{
|
||||
state_entry()
|
||||
|
@ -574,6 +604,7 @@ default
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
state running
|
||||
{
|
||||
state_entry()
|
||||
|
@ -587,6 +618,7 @@ state running
|
|||
notecard_query = llGetNotecardLine(notecard_name, 0);
|
||||
}
|
||||
}
|
||||
|
||||
link_message(integer sender, integer num, string msg, key id)
|
||||
{
|
||||
if (num == 90030)
|
||||
|
@ -805,6 +837,7 @@ state running
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
listen(integer channel, string name, key id, string msg)
|
||||
{
|
||||
if (channel == ASKROLE_CHANEL)
|
||||
|
@ -1048,6 +1081,7 @@ state running
|
|||
hovertext();
|
||||
}
|
||||
}
|
||||
|
||||
no_sensor()
|
||||
{
|
||||
if (slaveWearingRelay)
|
||||
|
@ -1064,6 +1098,7 @@ state running
|
|||
no_sensor_results();
|
||||
}
|
||||
}
|
||||
|
||||
sensor(integer total_number)
|
||||
{
|
||||
expected_number = total_number;
|
||||
|
@ -1078,6 +1113,7 @@ state running
|
|||
no_sensor_results();
|
||||
}
|
||||
}
|
||||
|
||||
timer()
|
||||
{
|
||||
llSetTimerEvent(1);
|
||||
|
@ -1127,6 +1163,7 @@ state running
|
|||
relay_select_menu();
|
||||
}
|
||||
}
|
||||
|
||||
changed(integer change)
|
||||
{
|
||||
if (change & CHANGED_LINK)
|
||||
|
@ -1157,6 +1194,7 @@ state running
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
dataserver(key query_id, string data)
|
||||
{
|
||||
if (query_id == notecard_query)
|
||||
|
@ -1240,6 +1278,7 @@ state running
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
on_rez(integer start)
|
||||
{
|
||||
get_unique_channels();
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* Copyright (c) the AVsitter Contributors (http://avsitter.github.io)
|
||||
* Copyright © the AVsitter Contributors (http://avsitter.github.io)
|
||||
* AVsitter™ is a trademark. For trademark use policy see:
|
||||
* https://avsitter.github.io/TRADEMARK.mediawiki
|
||||
*
|
||||
*
|
||||
* Please consider supporting continued development of AVsitter and
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* receive automatic updates and other benefits! All details and user
|
||||
* instructions can be found at http://avsitter.github.io
|
||||
*/
|
||||
|
||||
|
||||
string product = "AVsitter™ Menu Control";
|
||||
string version = "2.2";
|
||||
string security_script = "[AV]root-security";
|
||||
|
@ -26,6 +26,7 @@ integer menu_channel;
|
|||
integer menu_handle;
|
||||
key key_request;
|
||||
integer verbose = 1;
|
||||
|
||||
Out(integer level, string out)
|
||||
{
|
||||
if (verbose >= level)
|
||||
|
@ -33,14 +34,17 @@ Out(integer level, string out)
|
|||
llOwnerSay(llGetScriptName() + "[" + version + "]:" + out);
|
||||
}
|
||||
}
|
||||
|
||||
list order_buttons(list buttons)
|
||||
{
|
||||
return llList2List(buttons, -3, -1) + llList2List(buttons, -6, -4) + llList2List(buttons, -9, -7) + llList2List(buttons, -12, -10);
|
||||
}
|
||||
|
||||
string strReplace(string str, string search, string replace)
|
||||
{
|
||||
return llDumpList2String(llParseStringKeepNulls(str, [search], []), replace);
|
||||
}
|
||||
|
||||
controller_menu(key id)
|
||||
{
|
||||
CONTROLLER = id;
|
||||
|
@ -104,6 +108,7 @@ controller_menu(key id)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
dialog(string text, list menu_items, key id)
|
||||
{
|
||||
llListenRemove(menu_handle);
|
||||
|
@ -111,6 +116,7 @@ dialog(string text, list menu_items, key id)
|
|||
llDialog(id, product + " " + version + "\n\n" + text + "\n", order_buttons(menu_items), menu_channel);
|
||||
llSetTimerEvent(120);
|
||||
}
|
||||
|
||||
integer check_for_RLV()
|
||||
{
|
||||
if (llGetInventoryType(RLV_script) == INVENTORY_SCRIPT)
|
||||
|
@ -119,20 +125,24 @@ integer check_for_RLV()
|
|||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
default
|
||||
{
|
||||
state_entry()
|
||||
{
|
||||
llSetTimerEvent(0);
|
||||
}
|
||||
|
||||
on_rez(integer x)
|
||||
{
|
||||
llResetScript();
|
||||
}
|
||||
|
||||
timer()
|
||||
{
|
||||
llListenRemove(menu_handle);
|
||||
}
|
||||
|
||||
link_message(integer sender, integer num, string msg, key id)
|
||||
{
|
||||
if (num == 90007)
|
||||
|
@ -156,6 +166,7 @@ default
|
|||
DESIGNATIONS_NOW = llParseStringKeepNulls(msg, ["|"], []);
|
||||
}
|
||||
}
|
||||
|
||||
listen(integer channel, string name, key id, string message)
|
||||
{
|
||||
llListenRemove(menu_handle);
|
||||
|
@ -185,6 +196,7 @@ default
|
|||
controller_menu(id);
|
||||
}
|
||||
}
|
||||
|
||||
changed(integer change)
|
||||
{
|
||||
if (llGetAgentSize(llGetLinkKey(llGetNumberOfPrims())) == ZERO_VECTOR)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue