OpenSim.Region.ScriptEngine.Shared.Api.LSL_Api.llRequestInventoryData C# (CSharp) Method

llRequestInventoryData() public method

public llRequestInventoryData ( string name ) : OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString
name string
return OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString
        public LSL_String llRequestInventoryData(string name)
        {
            m_host.AddScriptLPS(1);

            foreach (TaskInventoryItem item in m_host.Inventory.GetInventoryItems())
            {
                if (item.Type == 3 && item.Name == name)
                {
                    UUID tid = AsyncCommands.
                        DataserverPlugin.RegisterRequest(m_host.LocalId,
                                                     m_item.ItemID, item.AssetID.ToString());

                    Vector3 region = new Vector3(World.RegionInfo.WorldLocX, World.RegionInfo.WorldLocY, 0);

                    World.AssetService.Get(item.AssetID.ToString(), this,
                        delegate(string i, object sender, AssetBase a)
                        {
                            AssetLandmark lm = new AssetLandmark(a);

                            float rx = (uint)(lm.RegionHandle >> 32);
                            float ry = (uint)lm.RegionHandle;
                            region = lm.Position + new Vector3(rx, ry, 0) - region;

                            string reply = region.ToString();
                            AsyncCommands.
                                DataserverPlugin.DataserverReply(i.ToString(),
                                                             reply);
                        });

                    ScriptSleep(m_sleepMsOnRequestInventoryData);
                    return tid.ToString();
                }
            }

            ScriptSleep(m_sleepMsOnRequestInventoryData);
            return String.Empty;
        }
LSL_Api