Join us in Outworldz at www.outworldz.com:9000 or follow us:

Search dozens of selected web sites for OpenSim and LSL script

New! Script Meta-Search will search thousands of scripts here and at other sites for LSL or Opensim scripts.
Loading

Want to add a script or a project? Upload it and a half million people will see it and your name here this year.

Home   Show All
Category: Contributor: Creator
Inventory Giver A_Friendly_Unpacker  

A_Friendly_Unpacker

Unpacker scripts scatter no-copy items all over your inventory. This can mean that you get a lot of IMs from frustrated and confused SL newbies who open one of your gift boxes and then can't find where everything went. There's no new magic to this short script -- you still have to give no-copy items individually, after all -- but it does send the new owner a friendly message that tells where to look for each unpacked item.

This work uses content from the Second Life® LSL Script library. Copyright © 2007-2009 Linden Research, Inc. Licensed under the Creative Commons Attribution-Share Alike 3.0 License.

Category: Inventory Giver
By : Rolig Loon
Created: 2011-07-05 Edited: 2011-07-05
Worlds: Second Life

the Zip file

Download all files for A_Friendly_Unpacker
Contents are in zip format, with .LSL (text) source code and LSLEdit (text + Solution) formats.
Get file # 1. A_Friendly_Unpacker_1.lsl
1 list gItems;
2 list gNocopy;
4 list gList_names = ["None", "Texture", "Sound", "Landmark", "Clothing", "Object", "Notecard", "Script", "Body Part", "Animation", "Gesture"];
5
6 default
7 {
9 {
11 while(All)
12 {
14 if(name != llGetScriptName())
15 {
17 {
18 gItems += [name]; //Copy perm items
19 }
20 else
21 {
22 gNocopy += [name]; //No-copy perm items
23 }
24 }
25 --All;
26 }
27 }
28
29 changed (integer change)
30 {
31 if((change & CHANGED_INVENTORY) || (change & CHANGED_OWNER))
32 {
34 }
35 }
36
38 {
39 llOwnerSay("Look for unpacked items in a folder named " + llGetObjectName() + " in your inventory.");
41 integer len = llGetListLength(gNocopy);
42 if(len)
43 {
44 llOwnerSay("Also, look for the following one-of-a-kind items:");
45 while(len)
46 {
47 // Determine what kind of inventory this is, and find that type in the gList_types list
48 integer idx = llListFindList(gList_types,[llGetInventoryType(llList2String(gNocopy,len-1))]);
49 // Then use idx to find the name of that type in the gList_names list and say it
50 if(~idx)
51 {
52 llOwnerSay(llList2String(gNocopy,len-1) + " will be in your " + llList2String(gList_names,idx) + " folder.");
54 }
55 --len;
56 }
57 }
58 }
59 }

Back to the Best Free Tools in Second Life and OpenSim.