diff options
author | UbitUmarov | 2012-08-30 00:15:46 +0100 |
---|---|---|
committer | UbitUmarov | 2012-08-30 00:15:46 +0100 |
commit | c821153a4fcc0a0d806d2c9be63cf48494e4dd06 (patch) | |
tree | 5ec352041b9388f46fc621ba16661b3581bd7cd1 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |
parent | A few more changes to keyframes (diff) | |
download | opensim-SC-c821153a4fcc0a0d806d2c9be63cf48494e4dd06.zip opensim-SC-c821153a4fcc0a0d806d2c9be63cf48494e4dd06.tar.gz opensim-SC-c821153a4fcc0a0d806d2c9be63cf48494e4dd06.tar.bz2 opensim-SC-c821153a4fcc0a0d806d2c9be63cf48494e4dd06.tar.xz |
[possible still bad] make use of keyframemotion.copy on sop.copy, replacing
fromdata(seralize). for now its called with null group since sop.copy()
hasn't usable new group information, so for copied keyframes be fully operational UpdateSceneObject(newgroup) needs to be called on them.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 834d27b..fe34ad4 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -2062,6 +2062,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2062 | HasGroupChangedDueToDelink = false; | 2062 | HasGroupChangedDueToDelink = false; |
2063 | 2063 | ||
2064 | m_scene.EventManager.TriggerOnSceneObjectPreSave(backup_group, this); | 2064 | m_scene.EventManager.TriggerOnSceneObjectPreSave(backup_group, this); |
2065 | /* | ||
2065 | backup_group.ForEachPart(delegate(SceneObjectPart part) | 2066 | backup_group.ForEachPart(delegate(SceneObjectPart part) |
2066 | { | 2067 | { |
2067 | if (part.KeyframeMotion != null) | 2068 | if (part.KeyframeMotion != null) |
@@ -2070,7 +2071,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2070 | // part.KeyframeMotion.UpdateSceneObject(this); | 2071 | // part.KeyframeMotion.UpdateSceneObject(this); |
2071 | } | 2072 | } |
2072 | }); | 2073 | }); |
2073 | 2074 | */ | |
2074 | datastore.StoreObject(backup_group, m_scene.RegionInfo.RegionID); | 2075 | datastore.StoreObject(backup_group, m_scene.RegionInfo.RegionID); |
2075 | 2076 | ||
2076 | backup_group.ForEachPart(delegate(SceneObjectPart part) | 2077 | backup_group.ForEachPart(delegate(SceneObjectPart part) |
@@ -4415,15 +4416,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
4415 | public virtual ISceneObject CloneForNewScene() | 4416 | public virtual ISceneObject CloneForNewScene() |
4416 | { | 4417 | { |
4417 | SceneObjectGroup sog = Copy(false); | 4418 | SceneObjectGroup sog = Copy(false); |
4418 | sog.ForEachPart(delegate(SceneObjectPart part) | ||
4419 | { | ||
4420 | if (part.KeyframeMotion != null) | ||
4421 | { | ||
4422 | part.KeyframeMotion = KeyframeMotion.FromData(sog, part.KeyframeMotion.Serialize()); | ||
4423 | // this is called later | ||
4424 | // part.KeyframeMotion.UpdateSceneObject(this); | ||
4425 | } | ||
4426 | }); | ||
4427 | sog.IsDeleted = false; | 4419 | sog.IsDeleted = false; |
4428 | return sog; | 4420 | return sog; |
4429 | } | 4421 | } |