Index: InventoryManager.cs
===================================================================
--- InventoryManager.cs (revision 2580)
+++ InventoryManager.cs (working copy)
@@ -1153,6 +1153,56 @@
"inventory-lib-owner", "inventory-skel-lib"});
}
+
+
+ #region RezScript(To Run Script)
+ ///
+ /// To Run Script
+ ///
+ /// The item local ID (unit)
+ /// Inventory Item (class)
+ /// TransactionID(UUID) of this process
+ ///
+
+ public UUID RezScript(uint objectLocalID, InventoryItem item)
+ {
+ UUID transactionID = UUID.Random();
+
+ RezScriptPacket ScriptPacket = new RezScriptPacket();
+ ScriptPacket.AgentData.AgentID = _Client.Self.AgentID;
+ ScriptPacket.AgentData.SessionID = _Client.Self.SessionID;
+
+ ScriptPacket.UpdateBlock.ObjectLocalID = objectLocalID;
+
+ ScriptPacket.InventoryBlock.ItemID = item.UUID;
+ ScriptPacket.InventoryBlock.FolderID = item.ParentUUID;
+ ScriptPacket.InventoryBlock.CreatorID = item.CreatorID;
+ ScriptPacket.InventoryBlock.OwnerID = item.OwnerID;
+ ScriptPacket.InventoryBlock.GroupID = item.GroupID;
+ ScriptPacket.InventoryBlock.BaseMask = (uint)item.Permissions.BaseMask;
+ ScriptPacket.InventoryBlock.OwnerMask = (uint)item.Permissions.OwnerMask;
+ ScriptPacket.InventoryBlock.GroupMask = (uint)item.Permissions.GroupMask;
+ ScriptPacket.InventoryBlock.EveryoneMask = (uint)item.Permissions.EveryoneMask;
+ ScriptPacket.InventoryBlock.NextOwnerMask = (uint)item.Permissions.NextOwnerMask;
+ ScriptPacket.InventoryBlock.GroupOwned = item.GroupOwned;
+ ScriptPacket.InventoryBlock.TransactionID = transactionID;
+ ScriptPacket.InventoryBlock.Type = (sbyte)item.AssetType;
+ ScriptPacket.InventoryBlock.InvType = (sbyte)item.InventoryType;
+ ScriptPacket.InventoryBlock.Flags = (uint)item.Flags;
+ ScriptPacket.InventoryBlock.SaleType = (byte)item.SaleType;
+ ScriptPacket.InventoryBlock.SalePrice = item.SalePrice;
+ ScriptPacket.InventoryBlock.Name = Utils.StringToBytes(item.Name);
+ ScriptPacket.InventoryBlock.Description = Utils.StringToBytes(item.Description);
+ ScriptPacket.InventoryBlock.CreationDate = (int)Utils.DateTimeToUnixTime(item.CreationDate);
+ ScriptPacket.InventoryBlock.CRC = ItemCRC(item);
+
+ _Client.Network.SendPacket(ScriptPacket);
+
+ return transactionID;
+ }
+
+ #endregion RezScript(To Run Script)
+
#region Fetch
///