aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
diff options
context:
space:
mode:
authorJustin Clarke Casey2008-06-12 17:49:08 +0000
committerJustin Clarke Casey2008-06-12 17:49:08 +0000
commit8714833986cef44787fd57a61699b7bdcfd3d3bb (patch)
treefbd78ff5755484df5ca5732389a7006f92db6508 /OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
parent* refactor: rename CreatePrimFromXml to CreatePrimFromXml2 (diff)
downloadopensim-SC_OLD-8714833986cef44787fd57a61699b7bdcfd3d3bb.zip
opensim-SC_OLD-8714833986cef44787fd57a61699b7bdcfd3d3bb.tar.gz
opensim-SC_OLD-8714833986cef44787fd57a61699b7bdcfd3d3bb.tar.bz2
opensim-SC_OLD-8714833986cef44787fd57a61699b7bdcfd3d3bb.tar.xz
* refactor: For new objects, move attach to backup to occur when adding to a scene, rather than on creation of the group
* Adding to a scene is now parameterized such that one can choose not to actually persist that group * This is to support a use case where a module wants a scene which consists of both objects which are persisted, and ones which are just temporary for the lifetime of that server instance
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.Inventory.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.Inventory.cs21
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
index ead7f23..ebc721f 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
@@ -1483,8 +1483,6 @@ namespace OpenSim.Region.Environment.Scenes
1483 RayStart, RayEnd, RayTargetID, new LLQuaternion(0, 0, 0, 1), 1483 RayStart, RayEnd, RayTargetID, new LLQuaternion(0, 0, 0, 1),
1484 BypassRayCast, bRayEndIsIntersection,true,scale, false); 1484 BypassRayCast, bRayEndIsIntersection,true,scale, false);
1485 1485
1486
1487
1488 // Rez object 1486 // Rez object
1489 CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId); 1487 CachedUserInfo userInfo = CommsManager.UserProfileCacheService.GetUserDetails(remoteClient.AgentId);
1490 if (userInfo != null) 1488 if (userInfo != null)
@@ -1508,7 +1506,7 @@ namespace OpenSim.Region.Environment.Scenes
1508 1506
1509 group.ResetIDs(); 1507 group.ResetIDs();
1510 1508
1511 AddSceneObject(group); 1509 AddSceneObject(group, true);
1512 1510
1513 // if attachment we set it's asset id so object updates can reflect that 1511 // if attachment we set it's asset id so object updates can reflect that
1514 // if not, we set it's position in world. 1512 // if not, we set it's position in world.
@@ -1601,6 +1599,15 @@ namespace OpenSim.Region.Environment.Scenes
1601 return null; 1599 return null;
1602 } 1600 }
1603 1601
1602 /// <summary>
1603 /// Rez an object in the scene
1604 /// </summary>
1605 /// <param name="item"></param>
1606 /// <param name="pos"></param>
1607 /// <param name="rot"></param>
1608 /// <param name="vel"></param>
1609 /// <param name="param"></param>
1610 /// <returns></returns>
1604 public virtual SceneObjectGroup RezObject(TaskInventoryItem item, LLVector3 pos, LLQuaternion rot, LLVector3 vel, int param) 1611 public virtual SceneObjectGroup RezObject(TaskInventoryItem item, LLVector3 pos, LLQuaternion rot, LLVector3 vel, int param)
1605 { 1612 {
1606 // Rez object 1613 // Rez object
@@ -1621,7 +1628,7 @@ namespace OpenSim.Region.Environment.Scenes
1621 } 1628 }
1622 group.ResetIDs(); 1629 group.ResetIDs();
1623 1630
1624 AddSceneObject(group); 1631 AddSceneObject(group, true);
1625 1632
1626 // Set the startup parameter for on_rez event and llGetStartParameter() function 1633 // Set the startup parameter for on_rez event and llGetStartParameter() function
1627 group.StartParameter = param; 1634 group.StartParameter = param;
@@ -1678,10 +1685,11 @@ namespace OpenSim.Region.Environment.Scenes
1678 rootPart.ScheduleFullUpdate(); 1685 rootPart.ScheduleFullUpdate();
1679 return rootPart.ParentGroup; 1686 return rootPart.ParentGroup;
1680 } 1687 }
1681
1682 } 1688 }
1689
1683 return null; 1690 return null;
1684 } 1691 }
1692
1685 public virtual bool returnObjects(SceneObjectGroup[] returnobjects, LLUUID AgentId) 1693 public virtual bool returnObjects(SceneObjectGroup[] returnobjects, LLUUID AgentId)
1686 { 1694 {
1687 string message = ""; 1695 string message = "";
@@ -1699,9 +1707,6 @@ namespace OpenSim.Region.Environment.Scenes
1699 //} 1707 //}
1700 //returnstring += "</scene>\n"; 1708 //returnstring += "</scene>\n";
1701 1709
1702
1703
1704
1705 bool permissionToDelete = false; 1710 bool permissionToDelete = false;
1706 1711
1707 for (int i = 0; i < returnobjects.Length; i++) 1712 for (int i = 0; i < returnobjects.Length; i++)