User:Aryn Gellner
Revision as of 18:46, 12 February 2015 by Aryn Gellner (talk | contribs) (Created page with " == Free LSL Scripts and snippets == '''Optimized Hovertext Adder''' Note: Script deletes itself after setting. This is preferred, since hovertext is considered a property o...")
Free LSL Scripts and snippets
Optimized Hovertext Adder
Note: Script deletes itself after setting. This is preferred, since hovertext is considered a property of the prim itself and is immune to copying/taking.
default
{
state_entry()
{
llListen(20, "", llGetOwner(), "");
llTextBox(llGetOwner(), "Set Hovertext", 20);
llRegionSayTo(llGetOwner(), 0, "Enter set hovertext in the resultant text box, or on channel 20");
}
listen(integer chan, string name, key id, string msg)
{
llSetText(msg, <1, 1, 1>, 1.0);
llRemoveInventory(llGetScriptName());
}
}
Optimized Rotation Slow
Note: Script deletes itself after setting. This is preferred, since llTargetOmega() is considered a property of the prim itself and is immune to copying/taking.
default
{
state_entry()
{
llTargetOmega(<0,0,1>*llGetLocalRot(),PI/4,1.0);
llRemoveInventory(llGetScriptName());
}
}
Give Inventory as a folder
string folder = ""; // Defaults to object name. Change this to a different value to set the folder name for the recipient.
default
{
touch_start(integer total_number)
{
list inv = [];
integer i = llGetInventoryNumber(INVENTORY_ALL);
while(--i >= 0)
{
inv += llGetInventoryName(INVENTORY_ALL, i);
}
integer removeThis = llListFindList(inv, [llGetScriptName()]);
inv = llDeleteSubList(inv, removeThis, removeThis);
if(folder == "")
{
llGiveInventoryList(llDetectedKey(0), llGetObjectName(), inv);
}
else
{
llGiveInventoryList(llDetectedKey(0), folder, inv);
}
}
}