Talk:BuildSlurl (NewAge)
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Note: This page has been moved from llSLURL (NewAge). See here for the related discussion. |
Alternative slurl type links
A thrown-together script example showing 3 different types of destination/teleport links.
<lsl>string message_1 = "Click this link for destination information and teleport option:\n";
string message_2 = "Click this link for instant teleport:\n";
string message_3 = "This link can be used on a web site to direct users in-world:\n";
string method_1 = "secondlife://"; // Usable in-world only
string method_2 = "secondlife:///app/teleport/"; // Instant teleport
string method_3 = "http://slurl.com/secondlife/"; // Genuine slurl usable in and out-world
string region_name;
vector coords;
string SLURL(string region, vector pos) {
return (llEscapeURL(region) + "/" + ((string)((integer)pos.x)) + "/" + ((string)((integer)pos.y)) + "/" + ((string)llCeil(pos.z)));
}
default {
on_rez(integer param) { llResetScript(); } changed(integer change) { if(change & CHANGED_REGION) { llResetScript(); } } state_entry() { // The user simply adds the destination region name and landing pos as the description of the prim (comma separated). list destination = llCSV2List(llGetObjectDesc()); if(llGetListLength(destination) == 2) { // Various checks could be employed to varify the user has added the destination to the prim desc correctly (idiot proofing!) region_name = llList2String(destination, 0); coords = ((vector)llList2String(destination, 1)); return; } else { // Otherwise the destination defaults to the prim position (Useful? Better than nothing). region_name = llGetRegionName(); coords = llGetPos(); } } touch_start(integer nd) { while(nd) { string dest = SLURL(region_name, coords); llInstantMessage(llDetectedKey(--nd), ("\n" + message_1 + method_1 + dest + "\n" + message_2 + method_2 + dest + "\n" + message_3 + method_3 + dest)); } }
}</lsl>-- Fred Gandt (talk|contribs) 19:41, 4 September 2010 (UTC)