aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs44
1 files changed, 9 insertions, 35 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 1bf6b87..4cc797b 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -1689,37 +1689,6 @@ namespace OpenSim.Region.Framework.Scenes
1689 } 1689 }
1690 } 1690 }
1691 1691
1692 /// <summary>
1693 /// Called when one or more objects are removed from the environment into inventory.
1694 /// </summary>
1695 /// <param name="remoteClient"></param>
1696 /// <param name="localID"></param>
1697 /// <param name="groupID"></param>
1698 /// <param name="action"></param>
1699 /// <param name="destinationID"></param>
1700 public virtual void DeRezObject(IClientAPI remoteClient, List<uint> localIDs,
1701 UUID groupID, DeRezAction action, UUID destinationID)
1702 {
1703 foreach (uint localID in localIDs)
1704 {
1705 DeRezObject(remoteClient, localID, groupID, action, destinationID);
1706 }
1707 }
1708
1709 /// <summary>
1710 /// Called when an object is removed from the environment into inventory.
1711 /// </summary>
1712 /// <param name="remoteClient"></param>
1713 /// <param name="localID"></param>
1714 /// <param name="groupID"></param>
1715 /// <param name="action"></param>
1716 /// <param name="destinationID"></param>
1717 public virtual void DeRezObject(IClientAPI remoteClient, uint localID,
1718 UUID groupID, DeRezAction action, UUID destinationID)
1719 {
1720 DeRezObjects(remoteClient, new List<uint>() { localID }, groupID, action, destinationID);
1721 }
1722
1723 public virtual void DeRezObjects(IClientAPI remoteClient, List<uint> localIDs, 1692 public virtual void DeRezObjects(IClientAPI remoteClient, List<uint> localIDs,
1724 UUID groupID, DeRezAction action, UUID destinationID) 1693 UUID groupID, DeRezAction action, UUID destinationID)
1725 { 1694 {
@@ -1990,14 +1959,19 @@ namespace OpenSim.Region.Framework.Scenes
1990 return group; 1959 return group;
1991 } 1960 }
1992 1961
1993 public virtual bool returnObjects(SceneObjectGroup[] returnobjects, UUID AgentId) 1962 public virtual bool returnObjects(SceneObjectGroup[] returnobjects,
1963 UUID AgentId)
1994 { 1964 {
1965 List<uint> localIDs = new List<uint>();
1966
1995 foreach (SceneObjectGroup grp in returnobjects) 1967 foreach (SceneObjectGroup grp in returnobjects)
1996 { 1968 {
1997 AddReturn(grp.OwnerID, grp.Name, grp.AbsolutePosition, "parcel owner return"); 1969 AddReturn(grp.OwnerID, grp.Name, grp.AbsolutePosition,
1998 DeRezObject(null, grp.RootPart.LocalId, 1970 "parcel owner return");
1999 grp.RootPart.GroupID, DeRezAction.Return, UUID.Zero); 1971 localIDs.Add(grp.RootPart.LocalId);
2000 } 1972 }
1973 DeRezObjects(null, localIDs, UUID.Zero, DeRezAction.Return,
1974 UUID.Zero);
2001 1975
2002 return true; 1976 return true;
2003 } 1977 }