From a53125aae0252f527a72db0cde7bf7afbb677b0a Mon Sep 17 00:00:00 2001 From: MW Date: Fri, 24 Aug 2007 11:04:07 +0000 Subject: Updated sqlite3.dll to version 3.4.2 Fixed it so now when you move a script to a Prim or delete a script from a prim the change should show up in the prims inventory straight away (without having to close the edit window and reopen it). When linking prims, all parts except for the root part of the new group are removed from the physics engine, as currently we only really support root parts in the physics engine. --- .../Region/Environment/Scenes/Scene.Inventory.cs | 3 +++ .../Region/Environment/Scenes/SceneObjectGroup.cs | 6 ++++++ bin/sqlite3.dll | Bin 363686 -> 363609 bytes 3 files changed, 9 insertions(+) diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index 83cd83c..4458a4d 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs @@ -220,6 +220,7 @@ namespace OpenSim.Region.Environment.Scenes if (hasPrim != false) { int type = ((SceneObjectGroup)ent).RemoveInventoryItem(remoteClient, localID, itemID); + ((SceneObjectGroup)ent).GetProperites(remoteClient); if (type == 10) { this.EventManager.TriggerRemoveScript(localID, itemID); @@ -277,6 +278,7 @@ namespace OpenSim.Region.Environment.Scenes if (hasPrim != false) { bool added = ((SceneObjectGroup)ent).AddInventoryItem(remoteClient, localID, item); + ((SceneObjectGroup)ent).GetProperites(remoteClient); if (added) { userInfo.DeleteItem(remoteClient.AgentId, item); @@ -359,6 +361,7 @@ namespace OpenSim.Region.Environment.Scenes if (rootPart.PhysActor != null) { this.phyScene.RemovePrim(rootPart.PhysActor); + rootPart.PhysActor = null; } storageManager.DataStore.RemoveObject(((SceneObjectGroup)selectedEnt).UUID, m_regInfo.SimUUID); diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index f787190..6945acb 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs @@ -456,6 +456,12 @@ namespace OpenSim.Region.Environment.Scenes this.m_parts.Add(linkPart.UUID, linkPart); linkPart.SetParent(this); + if (linkPart.PhysActor != null) + { + m_scene.PhysScene.RemovePrim(linkPart.PhysActor); + linkPart.PhysActor = null; + } + //TODO: rest of parts foreach (SceneObjectPart part in objectGroup.Children.Values) { diff --git a/bin/sqlite3.dll b/bin/sqlite3.dll index 29258fb..87f680f 100644 Binary files a/bin/sqlite3.dll and b/bin/sqlite3.dll differ -- cgit v1.1