Difference between revisions of "BuildSlurl (NewAge)"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
====llSLURL==== | ====llSLURL==== | ||
A way of creating SLURL's by using a pre-made function; | |||
llSLURL(string region_name, vector pos); | llSLURL(string region_name, vector pos); | ||
Revision as of 14:48, 2 September 2010
llSLURL
A way of creating SLURL's by using a pre-made function;
llSLURL(string region_name, vector pos);
Pre-made Function
<lsl> string llSLURL(string region_name, vector pos) {
string slurl = "secondlife://"; list parse = llParseString2List(region_name, [" "], []); if(llGetListLength(parse) != 0) { integer i = 0; integer all = llGetListLength(parse)-1; do { if(llStringLength(llList2String(parse, i)) > 0) { slurl += llList2String(parse, i); if((i != all)||(i < all)) { slurl += "%20"; } } }while(i++<all); } else { slurl += region_name; } parse = llParseString2List((string)pos, ["<", ",", ">"], []); slurl+="/"+(string)((integer)llList2String(parse, 0))+"/"+(string)((integer)llList2String(parse, 1))+"/"+(string)((integer)llList2String(parse, 2)); return slurl;
} </lsl>
Example Script
<lsl> string llSLURL(string region, vector pos) {
string slurl = "secondlife://"; list parse = llParseString2List(region, [" "], []); if(llGetListLength(parse) != 0) { integer i = 0; integer all = llGetListLength(parse)-1; do { if(llStringLength(llList2String(parse, i)) > 0) { slurl += llList2String(parse, i); if((i != all)||(i < all)) { slurl += "%20"; } } }while(i++<all); } else { slurl += region_name; } parse = llParseString2List((string)pos, ["<", ",", ">"], []); slurl+="/"+(string)((integer)llList2String(parse, 0))+"/"+(string)((integer)llList2String(parse, 1))+"/"+(string)((integer)llList2String(parse, 2)); return slurl;
}
default {
touch_start(integer x) { llWhisper(0, llSLURL(llGetRegionName(), llGetPos())); //Returns slurl like this; // secondlife://Phoenix%20Rising/214/160/24 }
} </lsl>