OsForceAttachToAvatarFromInventory
From OpenSimulator
(Difference between revisions)
m (Remove space) |
(Change INVENTORY_ALL by INVENTORY_OBJECT) |
||
Line 21: | Line 21: | ||
state_entry() | state_entry() | ||
{ | { | ||
− | ObjectName = llGetInventoryName( | + | ObjectName = llGetInventoryName(INVENTORY_OBJECT, 0); |
if (ObjectName == "") | if (ObjectName == "") | ||
Line 77: | Line 77: | ||
state_entry() | state_entry() | ||
{ | { | ||
− | ObjectName = llGetInventoryName( | + | ObjectName = llGetInventoryName(INVENTORY_OBJECT, 0); |
if (ObjectName == "") | if (ObjectName == "") |
Revision as of 09:55, 27 November 2020
osForceAttachToAvatarFromInventory(string itemName, integer attachmentPoint)
| |
Attach an inventory item in the object containing this script to the script owner without asking for PERMISSION_ATTACH. Nothing happens if the avatar is not in the region.
| |
Threat Level | High |
Permissions | ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER |
Extra Delay | 0 seconds |
Example(s) | |
// // osForceAttachToAvatarFromInventory Script Exemple (XEngine) // Author: djphil // string ObjectName; default { state_entry() { ObjectName = llGetInventoryName(INVENTORY_OBJECT, 0); if (ObjectName == "") { llSay(PUBLIC_CHANNEL, "Inventory object missing ..."); } else { llSay(PUBLIC_CHANNEL, "Touch to see osForceAttachToAvatarFromInventory attach the object " + ObjectName + " to your avatar's left hand."); } } touch_start(integer number) { osForceAttachToAvatarFromInventory(ObjectName, ATTACH_LHAND); } // The attach event is called on both attach and detach. attach(key id) { // Test if is a valid key and not NULL_KEY ('id' is only valid on attach) if (id && id != NULL_KEY) { llOwnerSay("The object " + ObjectName + " is attached to " + llKey2Name(id)); } else { llOwnerSay("The object is not attached!"); } } on_rez(integer param) { // Reset the script if it's not attached. if (!llGetAttached()) { llResetScript(); } } } For YEngine: // // osForceAttachToAvatarFromInventory Script Exemple (YEngine) // Author: djphil // string ObjectName; default { state_entry() { ObjectName = llGetInventoryName(INVENTORY_OBJECT, 0); if (ObjectName == "") { llSay(PUBLIC_CHANNEL, "Inventory object missing ..."); } else { llSay(PUBLIC_CHANNEL, "Touch to see osForceAttachToAvatarFromInventory attach the object " + ObjectName + " to your avatar's left hand."); } } touch_start(integer number) { osForceAttachToAvatarFromInventory(ObjectName, ATTACH_LHAND); } // The attach event is called on both attach and detach. attach(key id) { // Test if is a valid key ('id' is only valid on attach) if (id) { llOwnerSay("The object " + ObjectName + " is attached to " + llKey2Name(id)); } else { llOwnerSay("The object is not attached!"); } } on_rez(integer param) { // Reset the script if it's not attached. if (!llGetAttached()) { llResetScript(); } } } | |
Notes | |
This function was added in 0.7.4-post-fixes. See Attachment Points for the complete list of LSL Attachment Points Constants. |
See Also:
- osForceAttachToAvatar
- osForceAttachToAvatarFromInventory
- osForceAttachToOtherAvatarFromInventory
- osForceDetachFromAvatar
- osForceDropAttachment
- osForceDropAttachmentAt
- osDropAttachment
- osDropAttachmentAt