llRequestInventoryData

From Second Life Wiki
Revision as of 00:10, 9 December 2007 by Void Singer (talk | contribs) (hilighting)
Jump to navigation Jump to search

Summary

Function: key llRequestInventoryData( string name );
1.0 Forced Delay
10.0 Energy

Requests data from objects inventory object. When data is available the dataserver event will be raised.
Returns a key that is used to identify the dataserver event when it is raised.

• string name an item in the inventory of the prim this script is in

name Type dataserver Description
Landmark (vector) The vector data received by dataserver is a global position as an offset from the current region's origin (<0,0,0>). To obtain the absolute global position of a landmark, add llGetRegionCorner() to the vector.

Caveats

  • This function causes the script to sleep for 1.0 seconds.
  • If name is missing from the prim's inventory then an error is shouted on DEBUG_CHANNEL.

Examples

<lsl>//-- Open map for owner to 1st landmark in object inventory on touch //-- *MUST* be in an attached object (llMapDestination Requirement for non-touch use) key vgKeyOwner;

default {

 touch_start( integer vIntNull )
 {
   if (llDetectedKey( 0 ) == vgKeyOwner)
   {
     integer vIntLMcount = llGetInventoryNumber( INVENTORY_LANDMARK );
      //-- make sure we have a landmark in invetory
     if (vIntLMcount)
     {
       llRequestInventoryData( llGetInventoryName( INVENTORY_LANDMARK, 0 ) );
     }
   }
 }
 dataserver( key vKeyNull, string vStrData )
 {
    //-- because we don't know who touched us in this event, this
    //-- only works for the owner when called from the dataserver
   llMapDestination( llGetRegionName(), (vector)vStrData, ZERO_VECTOR );
 }
 on_rez( integer vIntNull )
 {
   vgKeyOwner = llGetOwner();
 }
}</lsl>

See Also

Functions

•  llMapDestination

Deep Notes

Signature

function key llRequestInventoryData( string name );