diff --git a/AVsitter2/[AV]sitB.lsl b/AVsitter2/[AV]sitB.lsl index f524857..f2a82dc 100644 --- a/AVsitter2/[AV]sitB.lsl +++ b/AVsitter2/[AV]sitB.lsl @@ -63,10 +63,12 @@ send_anim_info(integer broadcast) llMessageLinked(LINK_THIS, 90055, (string)SCRIPT_CHANNEL, llDumpList2String([llList2String(MENU_LIST, ANIM_INDEX), llList2String(DATA_LIST, ANIM_INDEX), llList2String(POS_ROT_LIST, ANIM_INDEX * 2), llList2String(POS_ROT_LIST, ANIM_INDEX * 2 + 1), broadcast, speed_index], "|")); } +// LSL:: Readout_Say(string say) { llMessageLinked(LINK_THIS, 90022, say, (string)SCRIPT_CHANNEL); } +// ::LSL list order_buttons(list buttons) { @@ -598,6 +600,7 @@ default onSit = llList2String(data, 14); memory(); } + // LSL:: else if (num == 90020 && llList2String(data, 0) == "") { Readout_Say("V:" + llDumpList2String([version, MTYPE, ETYPE, SET, SWAP, SITTER_INFO, CUSTOM_TEXT, ADJUST_MENU, SELECT, AMENU, OLD_HELPER_METHOD], "|")); @@ -618,6 +621,41 @@ default } llMessageLinked(LINK_THIS, 90021, (string)SCRIPT_CHANNEL, ""); } + // ::LSL + /* OSS:: + else if (num == 90020 && llList2String(data, 0) == "") + { + llMessageLinked(LINK_THIS, 90022, "V:" + llDumpList2String([version, MTYPE, ETYPE, SET, SWAP, SITTER_INFO, CUSTOM_TEXT, ADJUST_MENU, SELECT, AMENU, OLD_HELPER_METHOD], "|"), (string)SCRIPT_CHANNEL); + llMessageLinked(LINK_THIS, 90024, (string)SCRIPT_CHANNEL, "-1|D"); + } + else if (num == 90024) // self-sent message to dump the next line + { + if (llList2String(data, 1) == "D") + { + if (++two < llGetListLength(MENU_LIST)) + { + llSleep(0.5); + llMessageLinked(LINK_THIS, 90022, "S:" + llList2String(MENU_LIST, two) + "|" + llList2String(DATA_LIST, two), (string)SCRIPT_CHANNEL); + llMessageLinked(LINK_THIS, 90024, (string)SCRIPT_CHANNEL, (string)two + "|D"); + return; + } + llMessageLinked(LINK_THIS, 90024, (string)SCRIPT_CHANNEL, "-1|P"); + return; + } + if (++two < llGetListLength(MENU_LIST)) + { + if (llList2Vector(POS_ROT_LIST, two * 2) != ZERO_VECTOR) + { + llSleep(0.2); + llMessageLinked(LINK_THIS, 90022, "{" + llList2String(MENU_LIST, two) + "}" + llList2String(POS_ROT_LIST, two * 2) + llList2String(POS_ROT_LIST, two * 2 + 1), (string)SCRIPT_CHANNEL); + } + llMessageLinked(LINK_THIS, 90024, (string)SCRIPT_CHANNEL, (string)two + "|P"); + return; + } + llMessageLinked(LINK_THIS, 90021, (string)SCRIPT_CHANNEL, ""); + return; + } + */ } } } diff --git a/AVsitter2/build-aux.py b/AVsitter2/build-aux.py index f1af731..1458e93 100644 --- a/AVsitter2/build-aux.py +++ b/AVsitter2/build-aux.py @@ -36,7 +36,13 @@ def oss_process(filename): import re # Regex that replaces a line with its OSS version when one's specified. - os_re = re.compile(r'^( *)(.*?)// ?OSS::(.*)$', re.MULTILINE) + os_line_re = re.compile(r'^( *).*?// ?OSS::(.*)$', re.MULTILINE) + + # Regex that removes lines between //LSL:: and //::LSL (can't begin on first line) + sl_block_re = re.compile(r'\n\s*// ?LSL::(?:[^\n]|\n(?![ \t]*// ?::LSL[^\n]*?(?=\n)))*\n[ \t]*// ?::LSL[^\n]*(?=\n)') + + # Regex that removes /*OSS:: and its matching */ (can't begin on first line) + os_block_re = re.compile(r'\n\s*/\* ?OSS::[^\n]*(\n(?:[^\n]|\n(?![ \t]*\*/))*)\n[ \t]*\*/[^\n]*(?=\n)') if filename is not None: f = open(filename, "r"); @@ -55,7 +61,9 @@ def oss_process(filename): 'b88526b7-3966-43fd-ae76-1e39881c86aa') # TODO: Replace LockGuard texture UUIDs - s = os_re.sub(r'\1\3', s) + s = os_line_re.sub(r'\1\2', s) + s = sl_block_re.sub('', s) + s = os_block_re.sub(r'\1', s) sys.stdout.write(s) return 0