diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneGraph.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneObjectPart.cs | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneGraph.cs b/OpenSim/Region/Environment/Scenes/SceneGraph.cs index 078916a..aed01df 100644 --- a/OpenSim/Region/Environment/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Environment/Scenes/SceneGraph.cs | |||
@@ -1405,6 +1405,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
1405 | foreach (SceneObjectGroup sceneObj in children) | 1405 | foreach (SceneObjectGroup sceneObj in children) |
1406 | { | 1406 | { |
1407 | parenPrim.LinkToGroup(sceneObj); | 1407 | parenPrim.LinkToGroup(sceneObj); |
1408 | |||
1409 | // this is here so physics gets updated! | ||
1410 | // Don't remove! Bad juju! Stay away! or fix physics! | ||
1411 | sceneObj.AbsolutePosition = sceneObj.AbsolutePosition; | ||
1408 | } | 1412 | } |
1409 | 1413 | ||
1410 | // We need to explicitly resend the newly link prim's object properties since no other actions | 1414 | // We need to explicitly resend the newly link prim's object properties since no other actions |
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs index b15aff8..2fc379c 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs | |||
@@ -1247,6 +1247,12 @@ if (m_shape != null) { | |||
1247 | if (userExposed) | 1247 | if (userExposed) |
1248 | dupe.UUID = UUID.Random(); | 1248 | dupe.UUID = UUID.Random(); |
1249 | 1249 | ||
1250 | //memberwiseclone means it also clones the physics actor reference | ||
1251 | // This will make physical prim 'bounce' if not set to null. | ||
1252 | if (!userExposed) | ||
1253 | dupe.PhysActor = null; | ||
1254 | |||
1255 | |||
1250 | dupe._ownerID = AgentID; | 1256 | dupe._ownerID = AgentID; |
1251 | dupe._groupID = GroupID; | 1257 | dupe._groupID = GroupID; |
1252 | dupe.GroupPosition = GroupPosition; | 1258 | dupe.GroupPosition = GroupPosition; |