1*! \file brigadoon_teleporter.osl
2 * \brief SCript to send a Heartbeat signal to the Teleport Database
4 * \date 25-December-2025
5 * \author River Drifter @ little-sense.au:9000
6 * \email river_drifter@aussiebroadband.com.au
9 * NOTE: The file extension
".osl" indicates the script uses the Open Simulator Script
10 * language (OSSL) and will not function in the Second Life environment. If the script
11 * will function
using just the Linden Scripting Language (LSL), it will have a a file
12 * extension of
".lsl".
269 string location_area =
"";
275 return " [" + location_area +
"]";
287 integer random_value = 0x80000000 | (integer)llFrand(65536) | ((integer)llFrand(65536) << 16);
288 return(random_value);
303 if (
station_base > 0) button_list +=
"<<";
else button_list +=
" ";
306 button_list +=
"DONE";
312 string menu_header =
"Destinations Available from " +
location_name +
"\n";
325 string index_string = (string)(station_pos + 1);
328 menu_header +=
"[" + index_string +
"] " + item_name +
"\n";
331 button_list += index_string;
366 vector location_position = llGetPos();
371 osTeleportAgent(Agent, the_world +
":" + the_region, the_landing, the_look_at);
377 osTeleportAgent(Agent, the_region, the_landing, the_look_at);
381 else if (location_position != the_landing)
383 osTeleportAgent(Agent, the_landing, the_look_at);
410 list destination = llParseString2List(trimmed_line, [
"|"], []);
420 while (++index < list_length);
443 list config_data = llParseString2List(config, [
"\n"], []);
447 integer list_length = llGetListLength(config_data);
448 for (; index < list_length; ++index)
451 string trimmed_line = llStringTrim(llList2String(config_data, index), STRING_TRIM);
457 list key_value = llParseString2List(trimmed_line, [
"="], []);
460 string key_object = llToUpper(llStringTrim(llList2String(key_value, 0), STRING_TRIM));
463 string value_object = llStringTrim(llList2String(key_value, 1), STRING_TRIM);
499 touch_start(integer TotalNumber)
505 key user = llDetectedKey(0);
526 listen(integer Channel,
string Name, key Id,
string Message)
528 integer found_index = -1;
538 if ((Message ==
"DONE") || (Message ==
"OK") || (Message ==
" ") || (Message ==
"Ignore"))
552 else if (Message ==
">>")
566 if (llList2String(
menu_list, index) == Message)
588 changed(integer Change)
591 if (Change == CHANGED_INVENTORY)
integer LOCAL_TELEPORT_FORCE
Flag about whether Local teleport is used for all in-world regions.
integer REGION_FLAG
Number value of REgion Location flag.
integer REMOTE_UPDATE_FLAG
integer COMMENT_PREAMBLE_LENGTH
THe number of characters in the comment preamble.
string CONFIG_DESTINATIONS_NAME
The automatically generated list of teleporter destinations.
string location_name
The display name of the current location.
string CONFIG_NOTECARD_NAME
The name of the notecard containing the Teleport's Configuration.
string LOCATION_NAME
THe Key Value for defining hte name of the location in the Config notecard.
integer rdCalcCommsChannel()
find a pseudo random communications channel number
integer ANONYMOUS_FLAG
This flag designates the teleporter as anonymous.
list destination_group
Group to which the Location belongs.
float TIMER_OFF
Settings a Zero Time will turn off the Timer.
list destination_location
integer METAVERSE_FLAG
Number value of Metaverse Location flag.
list destination_region
The list of Teleport region names.
string location_region
Region holding the Teleporter.
integer EXTENDED_LOCAL_FLAG
Flag for Extended Local teleports.
float TIME_TO_DECIDE
Time a Menu remains active.
integer station_list_size
The total number of Destinations available.
rdInitialiseTeleporter()
Initialise or re-initialise the Teleporter.
string VERSION_STRING
The Current version of the software.
rdShowStationDialog(key User)
Display the Destination Teelport Menu.
integer WORLD_FLAG
Number value of World Location flag.
list destination_world
The list of Teleport world addresses.
rdReadDestinationList()
Read the list of Teleportation Destinations from the Notecard.
string COMMENT_PREAMBLE
Preamble for a comment line in the configuration file.
list destination_name
The list of Teleport location names.
string rdLocInfo2String(integer LocationInfo, integer Index)
integer LOCAL_FLAG
Number value of Local Location flag.
rdDoTeleport(key Agent, integer Index)
Select the Correct Teleportation Routine.
key last_user
the last user of the teleport menu
string location_world
The Teleporter Location's World.
integer DIALOG_STATION_LIMIT
The hard maximum number of Destinations on any menu page.
list destination_loc_type
The list of location types.