diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 4 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 4 |
3 files changed, 8 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs index e4e6f2c..233e559 100644 --- a/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs +++ b/OpenSim/Region/Framework/Scenes/KeyframeMotion.cs | |||
@@ -272,8 +272,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
272 | newmotion.m_basePosition = m_basePosition; | 272 | newmotion.m_basePosition = m_basePosition; |
273 | newmotion.m_baseRotation = m_baseRotation; | 273 | newmotion.m_baseRotation = m_baseRotation; |
274 | 274 | ||
275 | newmotion.m_currentFrame = m_currentFrame; | ||
276 | |||
277 | if (m_selected) | 275 | if (m_selected) |
278 | newmotion.m_serializedPosition = m_serializedPosition; | 276 | newmotion.m_serializedPosition = m_serializedPosition; |
279 | else | 277 | else |
@@ -284,6 +282,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
284 | newmotion.m_serializedPosition = m_serializedPosition; | 282 | newmotion.m_serializedPosition = m_serializedPosition; |
285 | } | 283 | } |
286 | 284 | ||
285 | newmotion.m_currentFrame = m_currentFrame; | ||
286 | |||
287 | newmotion.m_iterations = m_iterations; | 287 | newmotion.m_iterations = m_iterations; |
288 | newmotion.m_running = m_running; | 288 | newmotion.m_running = m_running; |
289 | 289 | ||
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index df4bd0d..bc0f5b6 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -2159,6 +2159,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2159 | 2159 | ||
2160 | dupe.CopyRootPart(m_rootPart, OwnerID, GroupID, userExposed); | 2160 | dupe.CopyRootPart(m_rootPart, OwnerID, GroupID, userExposed); |
2161 | dupe.m_rootPart.LinkNum = m_rootPart.LinkNum; | 2161 | dupe.m_rootPart.LinkNum = m_rootPart.LinkNum; |
2162 | |||
2162 | 2163 | ||
2163 | if (userExposed) | 2164 | if (userExposed) |
2164 | dupe.m_rootPart.TrimPermissions(); | 2165 | dupe.m_rootPart.TrimPermissions(); |
@@ -2209,6 +2210,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2209 | if (userExposed) | 2210 | if (userExposed) |
2210 | newPart.ApplyPhysics((uint)newPart.Flags,newPart.VolumeDetectActive,true); | 2211 | newPart.ApplyPhysics((uint)newPart.Flags,newPart.VolumeDetectActive,true); |
2211 | // } | 2212 | // } |
2213 | // copy keyframemotion | ||
2214 | if (part.KeyframeMotion != null) | ||
2215 | newPart.KeyframeMotion = part.KeyframeMotion.Copy(dupe); | ||
2212 | } | 2216 | } |
2213 | 2217 | ||
2214 | if (userExposed) | 2218 | if (userExposed) |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 4788a24..56d289f 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -2110,8 +2110,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
2110 | Array.Copy(Shape.ExtraParams, extraP, extraP.Length); | 2110 | Array.Copy(Shape.ExtraParams, extraP, extraP.Length); |
2111 | dupe.Shape.ExtraParams = extraP; | 2111 | dupe.Shape.ExtraParams = extraP; |
2112 | 2112 | ||
2113 | if (KeyframeMotion != null) | 2113 | // safeguard actual copy is done in sog.copy |
2114 | dupe.KeyframeMotion = KeyframeMotion.Copy(null); | 2114 | dupe.KeyframeMotion = null; |
2115 | 2115 | ||
2116 | if (userExposed) | 2116 | if (userExposed) |
2117 | { | 2117 | { |