<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.secondlife.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Valentine+Foxdale</id>
	<title>Second Life Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.secondlife.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Valentine+Foxdale"/>
	<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/wiki/Special:Contributions/Valentine_Foxdale"/>
	<updated>2026-07-26T02:22:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325563</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325563"/>
		<updated>2009-04-19T18:40:46Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header}}&lt;br /&gt;
Get Profile Picture by Valentine Foxdale&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        llSetText(&amp;quot;Touch for this object to display your profile picture!&amp;quot;,&amp;lt;0.8,0,1&amp;gt;,1); //Note: Usage of another person&#039;s profile picture without their permission may be viewed as copyright infringement. &lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/lsl&amp;gt;&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Category:LSL_Library&amp;diff=325553</id>
		<title>Category:LSL Library</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_Library&amp;diff=325553"/>
		<updated>2009-04-19T18:23:04Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header|ml=*}}{{RightToc}}&lt;br /&gt;
==Script Library==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;box&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em 0.5em 1.5em&amp;quot;&amp;gt;&lt;br /&gt;
Come to this page to see complex examples that show how to combine parts of LSL.&lt;br /&gt;
&lt;br /&gt;
Go to the [[:Category:LSL Examples|LSL Examples]] page to see brief examples of how to use parts of LSL &lt;br /&gt;
&lt;br /&gt;
Why collect complex examples here? Well, ...&lt;br /&gt;
&lt;br /&gt;
There are many [[script|scripts]] that have become buried in the [http://forums.secondlife.com/forumdisplay.php?f=15 Scripting Library forum], were lost with the death of the scripting forums, or sit idle in [[inventory|inventories]] that could be useful and should be more accessible.&lt;br /&gt;
&lt;br /&gt;
Other scripters may be in the same situation. This wiki is a well-suited medium for a script library. Feel free to add your scripts to the script library by creating new pages for them and linking to those pages here.&lt;br /&gt;
&lt;br /&gt;
Note that there are many more scripts in the LSL Library here, but you can&#039;t get to them if you don&#039;t know they exist, because they are subpages now, instead of an automatically updated category.  Good luck searching.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;box&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Rules for posting: ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em&amp;quot;&amp;gt;&lt;br /&gt;
#Your script must be tested and working. If it&#039;s not, stick it in your user-space until it is. This is a list of working, usable scripts.&lt;br /&gt;
#Add a link to your script&#039;s page here. Link back to this page from your script&#039;s page. Start your page with &amp;lt;nowiki&amp;gt;{{LSL Header}}&amp;lt;/nowiki&amp;gt;.&lt;br /&gt;
#Do not add scripts that duplicate the same functionality as an existing script or built in {{LSLGC|Functions|function}}. If yours does, explain why.&lt;br /&gt;
#Do not list simple scripts here. Include those among the [[:Category:LSL Examples|LSL Examples]] instead.&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;box&amp;quot;&amp;gt;&lt;br /&gt;
==LSL Script Library==&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Name&#039;&#039;&#039;&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Creator&#039;&#039;&#039;&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
||[[3D Radar]]&lt;br /&gt;
||[[User:Jesse Barnett|Jesse Barnett]]&lt;br /&gt;
||Rezzes a ball for each avatar in range. Each ball tracks its own AV and displays distance.&lt;br /&gt;
|-&lt;br /&gt;
||[[AdvancedNotecardReader]]&lt;br /&gt;
||[[Lear Cale|Lear Cale]]&lt;br /&gt;
||Robust configuration notecard reader; supports multiple notecards with same suffix, handles reconfig on inventory change, and does not usurp the default state.&lt;br /&gt;
|-&lt;br /&gt;
||[[AntiDelay Node]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Uses llMessageLinked to stop those pesky delays.&lt;br /&gt;
|-&lt;br /&gt;
||[[AO Overriding Pose Ball]]&lt;br /&gt;
||[[User:Jesse Barnett|Jesse Barnett]]&lt;br /&gt;
||No more turning your AO off and on when you sit down&lt;br /&gt;
|-&lt;br /&gt;
||[[ARCFOUR Strong Encryption Implementation]]&lt;br /&gt;
||[[User:Nekow42 Zarf|Nekow42 Zarf]]&lt;br /&gt;
||An LSL implementation of ARCFOUR, the most popular stream cipher still in use. It is licensed under a Creative Commons Attribution 3.0 license.&lt;br /&gt;
|-&lt;br /&gt;
||[[Assembly Programming Language|Assembly-Like Programming Language]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||A compiler that runs assembly-like programs.&lt;br /&gt;
|-&lt;br /&gt;
||[[Associative Array Emulator|Associative Array (Dictionary) Emulator]]&lt;br /&gt;
||[[User:Alynna Vixen|Alynna Vixen]]&lt;br /&gt;
||This library provides a set of functions for using a list as an associative array where string based keys can refer to one or more variant elements.&lt;br /&gt;
|-&lt;br /&gt;
||[[AvatarFollower]]&lt;br /&gt;
||[[User:Dale Innis|Dale Innis]]&lt;br /&gt;
||Allows one avatar to automatically follow another.&lt;br /&gt;
|-&lt;br /&gt;
||[[Basic Encryption Modules]]&lt;br /&gt;
||[[User:Beverly Larkin|Beverly Larkin]]&lt;br /&gt;
||Basic encryption scripts, allows you to encrypt a float and shout it to another prim on a randomly chosen channel.&lt;br /&gt;
|-&lt;br /&gt;
||[[BigNum|BigNum Library (RSA Encryption)]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||A BigNum Library for dealing with big numbers! Specialized for modular multiplication, and RSA encryption.&lt;br /&gt;
|-&lt;br /&gt;
||[[Binary Clock v1.1|Binary Clock]]&lt;br /&gt;
||[[User:Fox Diller|Fox Diller]]&lt;br /&gt;
||A Binary Clock.&lt;br /&gt;
|-&lt;br /&gt;
||[[Be happy]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||Basic smile attachment script, makes your avatar smile.&lt;br /&gt;
|-&lt;br /&gt;
||[[Best Neighbor Ad Hiding Script | Best Neighbor]]&lt;br /&gt;
||[[User:Doran Zemlja|Doran Zemlja]]&lt;br /&gt;
||Reduce ad clutter by hiding ads when users are on their own land nearby.&lt;br /&gt;
|-&lt;br /&gt;
||[[Blog Feed]]&lt;br /&gt;
||[[User:Kageshen Kirax|Kageshen Kirax]]&lt;br /&gt;
||Displays the latest blog.&lt;br /&gt;
|-&lt;br /&gt;
||[[Builders Buddy|Builder&#039;s Buddy Tool]]&lt;br /&gt;
||[[User:Newfie Pendragon|Newfie Pendragon]]&lt;br /&gt;
||Script to easily move/rotate large builds that exceed the linkable size limit (30 meters).&lt;br /&gt;
|-&lt;br /&gt;
||[[Camera Sync]]&lt;br /&gt;
||[[User:Meyermagic Salome|Meyermagic Salome]] and [[User:Nomad Padar|Nomad Padar]]&lt;br /&gt;
||A system to synchronize the cameras of two avatars.&lt;br /&gt;
|-&lt;br /&gt;
||[[Chatbot]]&lt;br /&gt;
||Anonymous&lt;br /&gt;
||Compile and run the LSL you type on a channel, faster than you can thru the 2007-08 SL GUI.&lt;br /&gt;
|-&lt;br /&gt;
||[[Chat Logger (GPL)]]&lt;br /&gt;
||[[User:Nobody Fugazi|Nobody Fugazi]]&lt;br /&gt;
||Chat logger which requests permission from participants before recording them.&lt;br /&gt;
|-&lt;br /&gt;
||[[Chat_Relay|Chat Relay]]&lt;br /&gt;
||[[User:grumble Loudon|grumble Loudon]]&lt;br /&gt;
||A Chat relay which can be routed using a path header and won&#039;t echo.&lt;br /&gt;
|-&lt;br /&gt;
||[[Code Racer]]&lt;br /&gt;
||Anonymous&lt;br /&gt;
||Race two versions of code forever, to see which runs faster.&lt;br /&gt;
|-&lt;br /&gt;
||[[Code Sizer]]&lt;br /&gt;
||Anonymous&lt;br /&gt;
||Count the bytes compiled from source code, to measure how to write small code.&lt;br /&gt;
|-&lt;br /&gt;
||[[Color conversion scripts|Color Conversion]]&lt;br /&gt;
||[[User:Sally LaSalle|Sally LaSalle]]&lt;br /&gt;
||Convert between Red Green Blue (RGB) and Hue Saturation Value (HSV).&lt;br /&gt;
|-&lt;br /&gt;
||[[Color script]]&lt;br /&gt;
||[[User:Masakazu Kojima|Masakazu Kojima]]&lt;br /&gt;
||Script for changing colors trough a listener with pre-defined colors.&lt;br /&gt;
|-&lt;br /&gt;
||[[Library Combined Library|Combined Library]]&lt;br /&gt;
||[[User:Strife Onizuka|Strife Onizuka]]&lt;br /&gt;
||Library of mostly encoding and decoding functions, some more useful then others.&lt;br /&gt;
* String functions: Replace / Trim right / Trim left / Trim both&lt;br /&gt;
* Unicode conversion: UTF8 to Unicode / Unicode to UTF8&lt;br /&gt;
* List functions: Replace / Compare&lt;br /&gt;
|-&lt;br /&gt;
||[[Computer:jaycoonlanguage]]&lt;br /&gt;
||[[User:jayco121 Bing|jayco121 Bing]]&lt;br /&gt;
|| A language written in LSL that is meant for my computer (available at the shop).&lt;br /&gt;
|-&lt;br /&gt;
||[[Library_Chat_Relay|Conversation Relay]]&lt;br /&gt;
||[[User:Jippen Faddoul|Jippen Faddoul]]&lt;br /&gt;
||Chat relay which requests permission from participants before relaying their messages. Also includes their attachments. (ToS compliant).&lt;br /&gt;
|-&lt;br /&gt;
||[[Curtain script]]&lt;br /&gt;
||[[User:Zilla Larsson|Zilla Larsson]]&lt;br /&gt;
||A simple script to retract/stretch curtains, blinds, bedcovers and more&lt;br /&gt;
|-&lt;br /&gt;
||[[Dataserver API]]&lt;br /&gt;
||[[User:Revolution Perenti|Revolution Perenti]]&lt;br /&gt;
||Dataserver Framework for Notecards.&lt;br /&gt;
|-&lt;br /&gt;
||[[Date Library]]&lt;br /&gt;
||[[User:Corto Maltese|Corto Maltese]]&lt;br /&gt;
|| Date library, based on number of day since march 3rd 1600, can be used to calculate weekday, date differences, and date offset, and date formating.&lt;br /&gt;
|-&lt;br /&gt;
||[[Days in Month]]&lt;br /&gt;
||[[User:IntLibber Brautigan|IntLibber Brautigan]]&lt;br /&gt;
||Clicking on it returns the number of days in the present month. Useful for scripting calendars and tier systems that need to know the number of days in the month at hand or to calculate for any month. Even adjusts for leap years.&lt;br /&gt;
|-&lt;br /&gt;
||[[Day of the Week]]&lt;br /&gt;
||[[User:DoteDote Edison|DoteDote Edison]]&lt;br /&gt;
||Function to get day of the week from [[llGetUnixTime]].&lt;br /&gt;
|-&lt;br /&gt;
||[[Deed Tools]]&lt;br /&gt;
||[[User:Falados Kapuskas|Falados Kapuskas]]&lt;br /&gt;
||Tools that allow the creator to modify Group-Owned (Deeded) Objects via chat.&lt;br /&gt;
|-&lt;br /&gt;
||[[Describe Chatter]]&lt;br /&gt;
||Anonymous&lt;br /&gt;
||Chat to see yourself as others do.&lt;br /&gt;
|-&lt;br /&gt;
||[[Drink script]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||Used mainly for food and drink in Second Life.&lt;br /&gt;
|-&lt;br /&gt;
||[[ClickAndDrag]]&lt;br /&gt;
||[[User:Nexii Malthus|Nexii Malthus]]&lt;br /&gt;
|| Click and Drag user interface elements using dynamic feedback&lt;br /&gt;
|-&lt;br /&gt;
||[[Dialog Control]]&lt;br /&gt;
||[[User:Nargus Asturias|Nargus Asturias]]&lt;br /&gt;
|| A (not-so) simple dialog control script. Call dialog and receive selected value via link_message(), with built-in timer and link_message() notification on time out. Supports multi-pages dialog and numeric property dialog. Button text and dialog&#039;s returned value can differ.&lt;br /&gt;
|-&lt;br /&gt;
||[[Dialog Menus Control]]&lt;br /&gt;
||[[User:Nargus Asturias|Nargus Asturias]]&lt;br /&gt;
|| An extension to Nargus Dialog Control. This menus control allow multi-level menus through SL dialog system. It can also recall last used menus. Menus are saved and pre-formatted for faster access. Though it is not the fastest, nor most memory efficient, but it should make it easier to use.&lt;br /&gt;
|-&lt;br /&gt;
||[[Dialog NumberPad|Dialog Number Pad]]&lt;br /&gt;
||[[User:DoteDote Edison|DoteDote Edison]]&lt;br /&gt;
||Use a dialog to accept positive integer input from users.&lt;br /&gt;
|-&lt;br /&gt;
||[[Efficiency Tester]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Tests the speed of a function.&lt;br /&gt;
|-&lt;br /&gt;
||[[Email-to-IM|Email2IM]]&lt;br /&gt;
||[[User:DoteDote Edison|DoteDote Edison]]&lt;br /&gt;
||Send IMs to SL friends via email (translate emails from friends into IMs).&lt;br /&gt;
|-&lt;br /&gt;
||[[ExplodingObjects]]&lt;br /&gt;
||[[User:Dale Innis|Dale Innis]]&lt;br /&gt;
||Causes an object (of the appropriate type) to explode on command.&lt;br /&gt;
|-&lt;br /&gt;
||[[Fix Small Prims|Fix_Small_Prims]]&lt;br /&gt;
||[[User:Emma Nowhere|Emma Nowhere]]&lt;br /&gt;
||Finds and adjusts the smallest prims in a linkset so that it can be scaled down further.&lt;br /&gt;
|-&lt;br /&gt;
||[[Float2Hex]]&lt;br /&gt;
||[[User:Strife Onizuka|Strife Onizuka]]&lt;br /&gt;
||Very useful for transporting [[float|floats]].&lt;br /&gt;
|-&lt;br /&gt;
||[[Follower (script)|Follower]]&lt;br /&gt;
||Unknown, uploaded by [[User:Slik Swindlehurst|Slik Swindlehurst]]&lt;br /&gt;
||Makes an object follow the nearest person. Do not use for [[grief|griefing]].&lt;br /&gt;
|-&lt;br /&gt;
||[[Geometric|Geometric Library]]&lt;br /&gt;
||Community Project&lt;br /&gt;
||A substantial amount of various geometric functions for intersection and other purposes of 3D maths.&lt;br /&gt;
|-&lt;br /&gt;
||[[Get Profile Picture]]&lt;br /&gt;
||[[User:Valentine Foxdale|Valentine Foxdale]]&lt;br /&gt;
||Sets the texture of the object to profile picture of the person that touches ot&lt;br /&gt;
|-&lt;br /&gt;
||[[GetTimestampOffset]]&lt;br /&gt;
||[[User:Siann_Beck|Siann Beck]]&lt;br /&gt;
||Returns llGetTimestamp() with an hour offset.&lt;br /&gt;
|-&lt;br /&gt;
||[[Give InvItem every n hours]]&lt;br /&gt;
||[[User:Criz Collins|Criz Collins]]&lt;br /&gt;
||Will give an inventory item on touch only every n hours, even if somebody touches the object more than once. &lt;br /&gt;
|-&lt;br /&gt;
||[[Give random object]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||Touch to recieve a random object in the prim&#039;s inventory&lt;br /&gt;
|-&lt;br /&gt;
||[[Google Charts]]&lt;br /&gt;
||[[User:Dedric Mauriac|Dedric Mauriac]]&lt;br /&gt;
||Create links to display raw data as a chart image.&lt;br /&gt;
|-&lt;br /&gt;
||[[Go transparent when walking]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||An attachment that goes invisble when you walk and visible when you don&#039;t walk.&lt;br /&gt;
|-&lt;br /&gt;
||[[Group Privacy]]&lt;br /&gt;
||[[User:Chance Unknown|Chance Unknown]]&lt;br /&gt;
||Security device to insure members of a group can have a private area. Deactivates when nobody present.&lt;br /&gt;
|-&lt;br /&gt;
||[[Group key finder]]&lt;br /&gt;
||[[User:Emmas Seetan| Emmas Seetan]]&lt;br /&gt;
||Touch to find the key of the group&lt;br /&gt;
|-&lt;br /&gt;
||[[Hello Avatar]]&lt;br /&gt;
||Linden Lab&lt;br /&gt;
||SL&#039;s default script.&lt;br /&gt;
|-&lt;br /&gt;
||[[Holodeck]]&lt;br /&gt;
||[[User:Revolution Perenti|Revolution Perenti]]&lt;br /&gt;
||Home Rezzing System (Open Source).&lt;br /&gt;
|-&lt;br /&gt;
||[[Intra-Region Update Server]]&lt;br /&gt;
||[[User:Emma_Nowhere|Emma Nowhere]]&lt;br /&gt;
||Centrally update objects such as Freeview screens or teleport pads within a region that are configured by notecards or contain modifiable objects or media assets.&lt;br /&gt;
|-&lt;br /&gt;
||[[Interpolation|Interpolation Library]]&lt;br /&gt;
||[[User:Nexii_Malthus|Nexii Malthus]]&lt;br /&gt;
||A small set of interpolation functions.&lt;br /&gt;
|-&lt;br /&gt;
||[[Inventory Menu]]&lt;br /&gt;
||[[User:Revolution Perenti|Revolution Perenti]]&lt;br /&gt;
||Inventory Based Menu System.&lt;br /&gt;
|-&lt;br /&gt;
||[[iTunes RPC Email|iTunes RPC]]&lt;br /&gt;
||[[User:Fox Diller|Fox Diller]]&lt;br /&gt;
||iTunes RPC via LSL [[llEmail]] and [[llRemoteDataReply]].&lt;br /&gt;
|-&lt;br /&gt;
||[[Key Pad Door|Keypad Door]]&lt;br /&gt;
||[[User:Tdub Dowler|Tdub Dowler]]&lt;br /&gt;
|| Door and keypad with changeable code. Follow instructions carefully!&lt;br /&gt;
|-&lt;br /&gt;
||[[LSL_languageAPI]]&lt;br /&gt;
||[[User:Gypsy paz|Gypsy Paz]]&lt;br /&gt;
||Multi-lingual API from notecard based language files&lt;br /&gt;
|-&lt;br /&gt;
||[[Last Sound System]]&lt;br /&gt;
||[[User:Babbage Linden|Babbage Linden]]&lt;br /&gt;
||An LSL Last.fm client.&lt;br /&gt;
|-&lt;br /&gt;
||[[Listener Script]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||Use to listen to other people&#039;s conversations (Like spying)&lt;br /&gt;
|-&lt;br /&gt;
||[[List2CSV]]&lt;br /&gt;
||[[User:Kunnis Basiat|Kunnis Basiat]]&lt;br /&gt;
||List2CSV &amp;amp; CSV2List that include perserving type and escaping characters.&lt;br /&gt;
|-&lt;br /&gt;
||[[Load URL]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||Touch to get a dialog to visit the URL inside the script.&lt;br /&gt;
|-&lt;br /&gt;
||[[Mandelbrot Explorer]]&lt;br /&gt;
||[[User:Babbage Linden|Babbage Linden]]&lt;br /&gt;
||An interactive fractal explorer.&lt;br /&gt;
|-&lt;br /&gt;
||[[Merge Sort]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Implements a Merge Sort in LSL, however this code is 300(ish) times slower than [[llListSort]]. Don&#039;t use this in a script!&lt;br /&gt;
|-&lt;br /&gt;
||[[Minesweeper]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||A simple minesweeper game.&lt;br /&gt;
|-&lt;br /&gt;
||[[Multi Item Rezzer|Multi Item Rezzer]]&lt;br /&gt;
||[[User:Jesse Barnett|Jesse Barnett]]&lt;br /&gt;
||A rework of my old High Altitude Rezzer. Place the objects that you wish to choose from to be rezzed inside. Sit on the rezzer and pick the item and the height. It will go to target height and rez the object.&lt;br /&gt;
|-&lt;br /&gt;
||[[Multirezzer|Multirezzer (on collision)]]&lt;br /&gt;
||[[User:Beet Streeter|Beet Streeter]]&lt;br /&gt;
||Spawns up to 10 objects when the object containing the script collides with a user.&lt;br /&gt;
|-&lt;br /&gt;
||[[Name2Key in LSL]]&lt;br /&gt;
||[[User:Maeva Anatine|Maeva Anatine]]&lt;br /&gt;
||Get the Name2Key feature inside your scripts. Works even on lastly subscribed avatars.&lt;br /&gt;
|-&lt;br /&gt;
||[[No Auto-Return]]&lt;br /&gt;
||[[User:Bellla Clarity|Bella Clarity]]&lt;br /&gt;
||To stop your long and hard builds from getting returned in sandboxes (&#039;&#039;only single prims, though!&#039;&#039;).&lt;br /&gt;
|-&lt;br /&gt;
||[[No Auto-Return (Multi)]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||A revision of Bella&#039;s that works for multi-prim objects.&lt;br /&gt;
|-&lt;br /&gt;
||[[No Limit Teleporter]]&lt;br /&gt;
||[[User:Morgam Biedermann|Morgam Biedermann]]&lt;br /&gt;
||Teleport to infinite altitudes (up to 4096m)&lt;br /&gt;
|-&lt;br /&gt;
||[[Object to Data v1.3|Object to Data]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Turns an object into text (and back). Allows people to transfer objects through notecards (or otherwise).&lt;br /&gt;
|-&lt;br /&gt;
||[[Online Indicator|Online Indicator]]&lt;br /&gt;
||[[User:Kristy Fanshaw|Kristy Fanshaw]]&lt;br /&gt;
||Will show if the user is online or not. Displays users profile picture and allows to send IM&#039;s to user. Also gives a link to open the users profile&lt;br /&gt;
|-&lt;br /&gt;
||[[Open Group Join]]&lt;br /&gt;
||[[User:Alicia Stella|Alicia Stella]]&lt;br /&gt;
||User Touches Object to Join Group from Group Info window, (no bot.)&lt;br /&gt;
|-&lt;br /&gt;
||[[ParseString2List]]&lt;br /&gt;
||[[User:Strife Onizuka|Strife Onizuka]]&lt;br /&gt;
||Same as [[llParseString2List]] and [[llParseStringKeepNulls]], but not limited to 8 spacers or separators. Thus substitute a call to the [[llParseString2List]] and [[llParseStringKeepNulls]] functions by a call to [[Parse_String_To_List|ParseString2List]] whenever you have more than 8 separators or more than 8 spacers.&lt;br /&gt;
|-&lt;br /&gt;
||[[Pathfinder]]&lt;br /&gt;
||[[User:Babbage Linden|Babbage Linden]]&lt;br /&gt;
||A potential field based pathfinding library.&lt;br /&gt;
|-&lt;br /&gt;
||[[Phantom Child]]&lt;br /&gt;
||[[User:Aeron Kohime|Aeron Kohime]]&lt;br /&gt;
||Causes a child in a link set to become phantom without the entire object becoming phantom.&lt;br /&gt;
|-&lt;br /&gt;
||[[Phantom Maker]]&lt;br /&gt;
||[[User:Xaviar_Czervik|Xaviar Czervik]]&lt;br /&gt;
||An object that turns avatars into phantoms, without having to remain sitting.&lt;br /&gt;
|-&lt;br /&gt;
||[[PosJump]]&lt;br /&gt;
||[[User:Uchi Desmoulins|Uchi Desmoulins]]&lt;br /&gt;
||A much more efficient alternative to the popular [[warpPos]] function for bypassing 10m distance-moved limitations.&lt;br /&gt;
|-&lt;br /&gt;
||[[Posing stand|Posing Stand]]&lt;br /&gt;
||[[User:Bellla Clarity|Bella Clarity]]&lt;br /&gt;
||Just a pose script to edit [[attachments]] more easily.&lt;br /&gt;
|-&lt;br /&gt;
||[[Prefix Calculator]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
|| A calculator that evaluates expressions in prefix notation. &lt;br /&gt;
&amp;lt;code&amp;gt;+ 3 4 = 5. * + 1 2 + 3 4 = 14.&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
||[[Pseudo-random Number Generator]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Generates a Pseudo-random number between -0x7FFFFFFF and 0x7FFFFFFF&lt;br /&gt;
|-&lt;br /&gt;
||[[Play and Loop Sound]]&lt;br /&gt;
||[[User:Bellla Clarity|Bella Clarity]]&lt;br /&gt;
||Very short and simple script; plays and loops a sound in an object.&lt;br /&gt;
|-&lt;br /&gt;
||[[Rainbow_palette]]&lt;br /&gt;
||[[User:Rui Clary|Rui Clary]]&lt;br /&gt;
||Build a color picker, using only one prim, and a few lines of code.&lt;br /&gt;
|-&lt;br /&gt;
||[[Random AV Profile Projector]]&lt;br /&gt;
||[[User:Debbie Trilling|Debbie Trilling]]&lt;br /&gt;
||Randomly selects an AV from a crowd &amp;amp; then projects their profile picture as a &#039;holographic&#039; image &lt;br /&gt;
|-&lt;br /&gt;
||[[Random Object Vendor]]&lt;br /&gt;
||[[User:CodeBastard Redgrave|CodeBastard Redgrave]]&lt;br /&gt;
||Simple vendor that gives out random objects when paid the right amount &lt;br /&gt;
|-&lt;br /&gt;
||[[Random Password Generator]]&lt;br /&gt;
||[[User:Jor3l Boa|Jor3l Boa]]&lt;br /&gt;
||Generate Random passwords based on String Length.&lt;br /&gt;
|-&lt;br /&gt;
||[[RavText]]&lt;br /&gt;
||[[User:Ravenous Dingo|Ravenous Dingo]]&lt;br /&gt;
||An alternate to XyText.  This is a lightweight, multiple font 10 character text display system.  It only supports uppercase alphanumeric text and a few special characters, but it is very fast, renders quickly and supports multiple fonts. It is meant for specialized use when all that is desired is basic, fast text display and the extra &amp;quot;bells and whistles&amp;quot; are not needed.&lt;br /&gt;
|-&lt;br /&gt;
||[[Say Region Frames Per Second|Region Frames Per Second]]&lt;br /&gt;
||[[User:Heymeriou Mystakidou|Heymariou Mystakidou]]&lt;br /&gt;
|| Says the region name and frames per second out loud on command.&lt;br /&gt;
|-&lt;br /&gt;
||[[sbDialog]]&lt;br /&gt;
||[[User:Siann_Beck|Siann Beck]]&lt;br /&gt;
||A simple replacement function for [[llDialog]]. It re-orders the button list so that the button values, as passed to it, display left-to-right, top-to-bottom. It also opens a [[llListen|listen]] on the specified channel, and returns the handle.&lt;br /&gt;
|-&lt;br /&gt;
||[[Scheduler]]&lt;br /&gt;
||[[User:Haravikk Mistral|Haravikk Mistral]]&lt;br /&gt;
||Schedule multiple events using a single script timer&lt;br /&gt;
|-&lt;br /&gt;
||[[Script Override Functions]]&lt;br /&gt;
||[[User:Revolution Perenti|Revolution Perenti]]&lt;br /&gt;
||bypass default strings, integer etc in chat channel.&lt;br /&gt;
|-&lt;br /&gt;
||[[Self Upgrading Script Enhanced]]&lt;br /&gt;
||[[User:Cron Stardust|Cron Stardust]]&lt;br /&gt;
||Keeps only latest version of the script on prim (even with multiple adds of the same script!)&lt;br /&gt;
|-&lt;br /&gt;
||[[SHA1|SHA1 Hash]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Preforms a SHA1 Hash on an input text. Similar to MD5 only (slightly) more secure.&lt;br /&gt;
|-&lt;br /&gt;
||[[Sim Map Particle Projector]]&lt;br /&gt;
||[[User:Jesse Barnett|Jesse Barnett]]&lt;br /&gt;
||Displays a floating map of the sim the script is in.&lt;br /&gt;
|-&lt;br /&gt;
||[[SLateIt]]&lt;br /&gt;
||[[User:Babbage Linden|Babbage Linden]]&lt;br /&gt;
||An augmented virtual reality HUD.&lt;br /&gt;
|-&lt;br /&gt;
||[[SLetanque]]&lt;br /&gt;
||[[User:Babbage Linden|Babbage Linden]]&lt;br /&gt;
||An LSL petanque game.&lt;br /&gt;
|-&lt;br /&gt;
||[[SLURL HUD]]&lt;br /&gt;
||[[User:CodeBastard Redgrave|CodeBastard Redgrave]]&lt;br /&gt;
||Touch this HUD to get a SLURL through IM, email and floating text.&lt;br /&gt;
|-&lt;br /&gt;
||[[SL Mail V1.2]]&lt;br /&gt;
||[[User:Flennan Roffo|Flennan Roffo]]&lt;br /&gt;
||Second Life mail client V1.2 (released sept&#039;07). Send and receive mail from within Second Life from and to any address. With Address Book function and many chat commands. V1.3 is upcoming soon! &lt;br /&gt;
|-&lt;br /&gt;
||[[SL_NTPoHTTP_v1.1_client|SL NTPoHTTP client]]&lt;br /&gt;
|[[User:SignpostMarv Martin|SignpostMarv Martin]]&lt;br /&gt;
||Second Life Needs Time Parsing over Hyper Text Transfer Protocol&lt;br /&gt;
Emulates the function of [[llGetWallclock]] for any timezone by using SLOpenID&#039;s SLNTPoHTTP service. Also supports ISO 8601 and RFC 2822 timestamps. Script is dependent upon an external service operated by the author!&lt;br /&gt;
|-&lt;br /&gt;
||[[Spiral Staircase Generator]]&lt;br /&gt;
|[[User:Meyermagic Salome|Meyermagic Salome]]&lt;br /&gt;
||Generates nice looking spiral staircases without much hassle.&lt;br /&gt;
|-&lt;br /&gt;
||[[String Compare]]&lt;br /&gt;
||[[User:Xaviar Czervik|Xaviar Czervik]]&lt;br /&gt;
||Compares two strings and reliably returns either 1, -1, or 0 if they are the same.&lt;br /&gt;
|-&lt;br /&gt;
||[[Teleport HUD]]&lt;br /&gt;
||[[User:Jesse Barnett|Jesse Barnett]]&lt;br /&gt;
||WORKS TO 4096 METERS!! Very user friendly teleport HUD. Add destinations by touching &amp;quot;Add&amp;quot; &amp;amp; naming destination in chat. Automatically gets sim name and coordinates. Will only display the destinations in the sim you are currently in. Demonstrates more advanced list manipulation and stride functions.&lt;br /&gt;
|-&lt;br /&gt;
||[[Texture Menu Management|Texture Management]]&lt;br /&gt;
||[[User:Revolution Perenti|Revolution Perenti]]&lt;br /&gt;
||Dialog Menu based Texture Selection.&lt;br /&gt;
|-&lt;br /&gt;
||[[Tic Tac Toe]]&lt;br /&gt;
||[[User:CG Linden|CG Linden]]&lt;br /&gt;
||Step by step demo on how to implement a larger scripting project&lt;br /&gt;
|-&lt;br /&gt;
||[[TightList]]&lt;br /&gt;
||[[User:Strife Onizuka|Revolution Perenti]]&lt;br /&gt;
||Tight List is a family of functions for encoding lists as strings and then decoding them back into lists. &lt;br /&gt;
&lt;br /&gt;
There are two flavors: TightList and TightListType. TightListType preserves types and uses a 6 char header, while TightList uses a 1 char header that doesn&#039;t preserve type. &lt;br /&gt;
|-&lt;br /&gt;
||[[Timer Module]]&lt;br /&gt;
||[[User:Isabelle Aquitaine|Isabelle Aquitaine]]&lt;br /&gt;
||Manage multiple timers via linked messages.&lt;br /&gt;
|-&lt;br /&gt;
||[[Touch A Quote]]&lt;br /&gt;
||[[User:CodeBastard Redgrave|CodeBastard Redgrave]]&lt;br /&gt;
||Touch an object to read quotes sequentially from a notecard&lt;br /&gt;
|-&lt;br /&gt;
||[[Unix2DateTime]]&lt;br /&gt;
|[[User:Flennan Roffo|Flennan Roffo]]&lt;br /&gt;
||Conversion from Unix time (llGetUnixTime()) to date and time string and vice versa.&lt;br /&gt;
|-&lt;br /&gt;
||[[Under Age Boot]]&lt;br /&gt;
|[[User:Chance Unknown|Chance Unknown]]&lt;br /&gt;
||Security device example to teleport home accounts below a minimum age limit; can be useful in combating free griefer accounts.&lt;br /&gt;
|-&lt;br /&gt;
||[[Unmutable Descript Nagger]]&lt;br /&gt;
|[[User:Bobbyb30 Zohari|Bobbyb30 Zohari]]&lt;br /&gt;
||To nag avatars to take off their scripted attatchments.&lt;br /&gt;
|-&lt;br /&gt;
||[[Visitor Logger (Web/Basic) ]]&lt;br /&gt;
|[[User:Buddy Sprocket|Buddy Sprocket]]&lt;br /&gt;
||A very basic visitor logger - log visitors in SL to a text file on your web-site.&lt;br /&gt;
|-&lt;br /&gt;
||[[Vote Simple]]&lt;br /&gt;
|[[User:JB_Kraft|JB Kraft]]&lt;br /&gt;
||Simple vote collector. One avi, one vote.&lt;br /&gt;
|-&lt;br /&gt;
||[[WarpPos]]&lt;br /&gt;
|[[User:Keknehv Psaltery|Keknehv Psaltery]]&lt;br /&gt;
||Non-physical movement without the 10m limit.&lt;br /&gt;
|-&lt;br /&gt;
||[[Window Control]]&lt;br /&gt;
||[[User:Emmas Seetan|Emmas Seetan]]&lt;br /&gt;
||For window opacity, helpful for buildings.&lt;br /&gt;
|-&lt;br /&gt;
||[[WHMcs SecondLife plugin]]&lt;br /&gt;
|[[User:Alicia Sautereau|Alicia Sautereau]]&lt;br /&gt;
||Linden Dollar payment plugin for the WHMcs hosting portal.&lt;br /&gt;
|-&lt;br /&gt;
||[[XTEA Strong Encryption Implementation]]&lt;br /&gt;
||[[User:Morse Dillon|Morse Dillon]]&lt;br /&gt;
||An LSL implementation of XTEA (eXtended Tiny Encryption Algorithm).  This is the first known public release of a &#039;real&#039; strong encryption implementation in LSL and is released under the GNU General Public License (GPL).&lt;br /&gt;
|-&lt;br /&gt;
||[[XyText 1.5|XyText]]&lt;br /&gt;
||[[User:Xylor Baysklef|Xylor Baysklef]]&lt;br /&gt;
|| Display text (up to 10 characters) on a prim. Use as many prims as desired.&lt;br /&gt;
|-&lt;br /&gt;
||[[XyyyyzText|XyyyyzText]]&lt;br /&gt;
||[[User:Criz Collins|Criz Collins]]&lt;br /&gt;
|| Display text (up to 10 characters) on a prim. Displays different text for each line instead of one single text, that will be broken into the next lines. Watch here for what that means: http://screencast.com/t/1wMLujLcEO&lt;br /&gt;
|-&lt;br /&gt;
||[[XyzzyText|XyzzyText]]&lt;br /&gt;
||[[User:Thraxis Epsilon|Thraxis Epsilon]] and [[User:Gigs Taggart|Gigs Taggart]]&lt;br /&gt;
|| Display text (up to 10 characters) on a prim. Way more efficient than XyText.&lt;br /&gt;
|-&lt;br /&gt;
||[[Zero Lag Poseball]]&lt;br /&gt;
||[[User:Jippen Faddoul|Jippen Faddoul]]&lt;br /&gt;
||A simple poseball with no lag&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;box&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Support Script Library==&lt;br /&gt;
These are scripts in other languages, intended to be run on other systems that support scripts written in LSL&lt;br /&gt;
&lt;br /&gt;
{| {{Prettytable}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Name&#039;&#039;&#039;&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Creator&#039;&#039;&#039;&lt;br /&gt;
|{{Hl2}}| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
||[[HTTP Post request to a PHP server]]&lt;br /&gt;
||[[User:Corto Maltese|Corto Maltese]]&lt;br /&gt;
|| This small library allows you to make simple POST requests to your website. The libraries allow you to get your request through the variable $_POST on the server. It also include a basic security mechanism aimed to stop hacking. Comprises of LSL client script and PHP server script.&lt;br /&gt;
|-&lt;br /&gt;
|| Silo&lt;br /&gt;
|| [[User:Zero_Linden|Zero Linden]]&lt;br /&gt;
|| General purpose data store in PHP.  Use this to persist arbitrary data from LSL via [[llHTTPRequest]].  See:&lt;br /&gt;
* [http://www.notabene-sl.com/misc/silo-README.txt README] file&lt;br /&gt;
* [http://www.notabene-sl.com/misc/silo.tgz silo.tgz] tarball&lt;br /&gt;
* forum post [http://forums.secondlife.com/showthread.php?t=119570 Announcement].&lt;br /&gt;
|-&lt;br /&gt;
|| [[User:SignpostMarv Martin/PHP/llXorBase64StringsCorrect|llXorBase64StringsCorrect]]&lt;br /&gt;
|| [[User:SignpostMarv Martin|SignpostMarv Martin]]&lt;br /&gt;
|| An implementation of [[llXorBase64StringsCorrect]] in PHP- should be useful if you&#039;re using llXorBase64StringsCorrect to do cryptography work in LSL2 and posting it out to the web via [[llHTTPRequest]].&lt;br /&gt;
|-&lt;br /&gt;
|| [[User:SignpostMarv Martin/PHP/lsl fu.php|lsl_fu.php]]&lt;br /&gt;
|| [[User:SignpostMarv Martin|SignpostMarv Martin]]&lt;br /&gt;
|| A basic OOP&#039;d PHP Class containing VeloxSeverine&#039;s $_POST fixer and Marv&#039;s own eccentric ideas for &amp;quot;fixing&amp;quot; things.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;box&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0.5em&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Articles&#039;&#039;&#039;&lt;br /&gt;
*[[:Category:LSL Examples| Examples]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{LSLC|}}&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325543</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325543"/>
		<updated>2009-04-19T18:15:14Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header}}&lt;br /&gt;
Get Profile Picture by Valentine Foxdale&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/lsl&amp;gt;&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325533</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325533"/>
		<updated>2009-04-19T18:14:02Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header}}&lt;br /&gt;
Get Profile Picture by Valentine Foxdale&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        integer s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/lsl&amp;gt;&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325503</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325503"/>
		<updated>2009-04-19T18:03:21Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header}}&lt;br /&gt;
Get Profile Picture by Valentine Foxdale&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = 0;&lt;br /&gt;
        integer s2 = 0;&lt;br /&gt;
        integer s1l= 0;&lt;br /&gt;
        s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325493</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325493"/>
		<updated>2009-04-19T18:02:30Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{LSL Header}}&lt;br /&gt;
Get Profile Picture by Valentine Foxdale&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;br /&gt;
// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
    llSay(0,&amp;quot;Set Default&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = 0;&lt;br /&gt;
        integer s2 = 0;&lt;br /&gt;
        integer s1l= 0;&lt;br /&gt;
        s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;lsl&amp;gt;&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325483</id>
		<title>Get Profile Picture</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Get_Profile_Picture&amp;diff=325483"/>
		<updated>2009-04-19T17:57:51Z</updated>

		<summary type="html">&lt;p&gt;Valentine Foxdale: New page: // Snippets and HTTPRequest bits were taken from: //~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~  // Get Profile Picture by Valentine Foxdale list sides; list deftextures; GetPro...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;// Snippets and HTTPRequest bits were taken from:&lt;br /&gt;
//~ RANDOM PROFILE PROJECTOR v5.4.5 by Debbie Trilling ~&lt;br /&gt;
&lt;br /&gt;
// Get Profile Picture by Valentine Foxdale&lt;br /&gt;
list sides;&lt;br /&gt;
list deftextures;&lt;br /&gt;
GetProfilePic(key id) //Run the HTTP Request then set the texture&lt;br /&gt;
{&lt;br /&gt;
    key id=llDetectedKey(0);&lt;br /&gt;
    string URL_RESIDENT = &amp;quot;http://world.secondlife.com/resident/&amp;quot;;&lt;br /&gt;
    llHTTPRequest( URL_RESIDENT + (string)id,[HTTP_METHOD,&amp;quot;GET&amp;quot;],&amp;quot;&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
GetDefaultTextures() //Get the default textures from each side&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        sides+=i;&lt;br /&gt;
        deftextures+=llGetTexture(i);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
SetDefaultTextures() //Set the sides to their default textures&lt;br /&gt;
{&lt;br /&gt;
    integer    i;&lt;br /&gt;
    integer    faces;&lt;br /&gt;
    faces = llGetNumberOfSides();&lt;br /&gt;
    for (i = 0; i &amp;lt; faces; i++)&lt;br /&gt;
    {&lt;br /&gt;
        llSetTexture(llList2String(deftextures,i),i);&lt;br /&gt;
    }&lt;br /&gt;
    llSay(0,&amp;quot;Set Default&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
default&lt;br /&gt;
{&lt;br /&gt;
    state_entry()&lt;br /&gt;
    {&lt;br /&gt;
        GetDefaultTextures();&lt;br /&gt;
    }&lt;br /&gt;
    touch_start(integer total_number)&lt;br /&gt;
    {&lt;br /&gt;
        GetProfilePic(llDetectedKey(0));&lt;br /&gt;
    }&lt;br /&gt;
    http_response(key req,integer stat, list met, string body)&lt;br /&gt;
    {&lt;br /&gt;
        integer s1 = 0;&lt;br /&gt;
        integer s2 = 0;&lt;br /&gt;
        integer s1l= 0;&lt;br /&gt;
        s1 = llSubStringIndex(body,&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s1l = llStringLength(&amp;quot;&amp;lt;img alt=\&amp;quot;profile image\&amp;quot; src=\&amp;quot;http://secondlife.com/app/image/&amp;quot;);&lt;br /&gt;
        s2 = llSubStringIndex(body,&amp;quot;\&amp;quot; class=\&amp;quot;parcelimg\&amp;quot; /&amp;gt;&amp;quot;)-3;&lt;br /&gt;
 &lt;br /&gt;
        if(s1 == -1){SetDefaultTextures();}&lt;br /&gt;
        else&lt;br /&gt;
        {&lt;br /&gt;
            key UUID=llGetSubString(body,s1+s1l,s2);&lt;br /&gt;
            llSetTexture(UUID,ALL_SIDES);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;/div&gt;</summary>
		<author><name>Valentine Foxdale</name></author>
	</entry>
</feed>