llRequestInventoryData

From Second Life Wiki
Revision as of 01:33, 12 November 2007 by Void Singer (talk | contribs) (added example=, also=)
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

//-- Open map for owner to 1st landmark in object inventory on touch
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( "", (vector)vStrData, ZERO_VECTOR );
  }

  on_rez( integer vIntNull )
  {
    vgKeyOwner = llGetOwner();
  }
}

See Also

Functions

•  llMapDestination

Deep Notes

Signature

function key llRequestInventoryData( string name );