diff options
author | Melanie | 2013-06-06 03:03:05 +0100 |
---|---|---|
committer | Melanie | 2013-06-06 03:03:05 +0100 |
commit | 81ad9255b5f44d988bf37cfaf6dc59b05fd744b7 (patch) | |
tree | 201e5f412c3f12e0f94424362fffb0c635343af3 /OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |
parent | Committing Avination's Keyframe module. This is not hooked up yet and will do... (diff) | |
download | opensim-SC-81ad9255b5f44d988bf37cfaf6dc59b05fd744b7.zip opensim-SC-81ad9255b5f44d988bf37cfaf6dc59b05fd744b7.tar.gz opensim-SC-81ad9255b5f44d988bf37cfaf6dc59b05fd744b7.tar.bz2 opensim-SC-81ad9255b5f44d988bf37cfaf6dc59b05fd744b7.tar.xz |
Hook up Keyframe motion to almost everything. Failing to cross a sim border
may yield unexpected results in some cases. No database persistence yet,
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index df23cc5..da80e4f 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -455,6 +455,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
455 | || Scene.TestBorderCross(val, Cardinals.S)) | 455 | || Scene.TestBorderCross(val, Cardinals.S)) |
456 | && !IsAttachmentCheckFull() && (!Scene.LoadingPrims)) | 456 | && !IsAttachmentCheckFull() && (!Scene.LoadingPrims)) |
457 | { | 457 | { |
458 | if (m_rootPart.KeyframeMotion != null) | ||
459 | m_rootPart.KeyframeMotion.StartCrossingCheck(); | ||
460 | |||
458 | m_scene.CrossPrimGroupIntoNewRegion(val, this, true); | 461 | m_scene.CrossPrimGroupIntoNewRegion(val, this, true); |
459 | } | 462 | } |
460 | } | 463 | } |
@@ -578,6 +581,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
578 | childPa.Selected = value; | 581 | childPa.Selected = value; |
579 | } | 582 | } |
580 | } | 583 | } |
584 | if (RootPart.KeyframeMotion != null) | ||
585 | RootPart.KeyframeMotion.Selected = value; | ||
581 | } | 586 | } |
582 | } | 587 | } |
583 | 588 | ||
@@ -1551,6 +1556,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1551 | 1556 | ||
1552 | newPart.DoPhysicsPropertyUpdate(originalPartPa.IsPhysical, true); | 1557 | newPart.DoPhysicsPropertyUpdate(originalPartPa.IsPhysical, true); |
1553 | } | 1558 | } |
1559 | if (part.KeyframeMotion != null) | ||
1560 | newPart.KeyframeMotion = part.KeyframeMotion.Copy(dupe); | ||
1554 | } | 1561 | } |
1555 | 1562 | ||
1556 | if (userExposed) | 1563 | if (userExposed) |
@@ -1578,6 +1585,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
1578 | 1585 | ||
1579 | public void ScriptSetPhysicsStatus(bool usePhysics) | 1586 | public void ScriptSetPhysicsStatus(bool usePhysics) |
1580 | { | 1587 | { |
1588 | if (usePhysics) | ||
1589 | { | ||
1590 | if (RootPart.KeyframeMotion != null) | ||
1591 | RootPart.KeyframeMotion.Stop(); | ||
1592 | RootPart.KeyframeMotion = null; | ||
1593 | } | ||
1581 | UpdatePrimFlags(RootPart.LocalId, usePhysics, IsTemporary, IsPhantom, IsVolumeDetect); | 1594 | UpdatePrimFlags(RootPart.LocalId, usePhysics, IsTemporary, IsPhantom, IsVolumeDetect); |
1582 | } | 1595 | } |
1583 | 1596 | ||