aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
authorUbitUmarov2012-08-30 00:15:46 +0100
committerUbitUmarov2012-08-30 00:15:46 +0100
commitc821153a4fcc0a0d806d2c9be63cf48494e4dd06 (patch)
tree5ec352041b9388f46fc621ba16661b3581bd7cd1 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
parent A few more changes to keyframes (diff)
downloadopensim-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.cs12
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 }