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 9a33993..8b5316a 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -1688,37 +1688,6 @@ namespace OpenSim.Region.Framework.Scenes
1688 } 1688 }
1689 } 1689 }
1690 1690
1691 /// <summary>
1692 /// Called when one or more objects are removed from the environment into inventory.
1693 /// </summary>
1694 /// <param name="remoteClient"></param>
1695 /// <param name="localID"></param>
1696 /// <param name="groupID"></param>
1697 /// <param name="action"></param>
1698 /// <param name="destinationID"></param>
1699 public virtual void DeRezObject(IClientAPI remoteClient, List<uint> localIDs,
1700 UUID groupID, DeRezAction action, UUID destinationID)
1701 {
1702 foreach (uint localID in localIDs)
1703 {
1704 DeRezObject(remoteClient, localID, groupID, action, destinationID);
1705 }
1706 }
1707
1708 /// <summary>
1709 /// Called when an object is removed from the environment into inventory.
1710 /// </summary>
1711 /// <param name="remoteClient"></param>
1712 /// <param name="localID"></param>
1713 /// <param name="groupID"></param>
1714 /// <param name="action"></param>
1715 /// <param name="destinationID"></param>
1716 public virtual void DeRezObject(IClientAPI remoteClient, uint localID,
1717 UUID groupID, DeRezAction action, UUID destinationID)
1718 {
1719 DeRezObjects(remoteClient, new List<uint>() { localID }, groupID, action, destinationID);
1720 }
1721
1722 public virtual void DeRezObjects(IClientAPI remoteClient, List<uint> localIDs, 1691 public virtual void DeRezObjects(IClientAPI remoteClient, List<uint> localIDs,
1723 UUID groupID, DeRezAction action, UUID destinationID) 1692 UUID groupID, DeRezAction action, UUID destinationID)
1724 { 1693 {
@@ -2003,14 +1972,19 @@ namespace OpenSim.Region.Framework.Scenes
2003 return group; 1972 return group;
2004 } 1973 }
2005 1974
2006 public virtual bool returnObjects(SceneObjectGroup[] returnobjects, UUID AgentId) 1975 public virtual bool returnObjects(SceneObjectGroup[] returnobjects,
1976 UUID AgentId)
2007 { 1977 {
1978 List<uint> localIDs = new List<uint>();
1979
2008 foreach (SceneObjectGroup grp in returnobjects) 1980 foreach (SceneObjectGroup grp in returnobjects)
2009 { 1981 {
2010 AddReturn(grp.OwnerID, grp.Name, grp.AbsolutePosition, "parcel owner return"); 1982 AddReturn(grp.OwnerID, grp.Name, grp.AbsolutePosition,
2011 DeRezObject(null, grp.RootPart.LocalId, 1983 "parcel owner return");
2012 grp.RootPart.GroupID, DeRezAction.Return, UUID.Zero); 1984 localIDs.Add(grp.RootPart.LocalId);
2013 } 1985 }
1986 DeRezObjects(null, localIDs, UUID.Zero, DeRezAction.Return,
1987 UUID.Zero);
2014 1988
2015 return true; 1989 return true;
2016 } 1990 }