aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
authorMelanie2012-06-06 14:16:19 +0100
committerMelanie2012-06-06 14:16:19 +0100
commitc0b21d92c2219c3bfd69e1467c28f20859dd4dc7 (patch)
treeedb346e1bcde87b1029babc753df9279e4102239 /OpenSim/Region/Framework
parentMerge branch 'master' into careminster (diff)
parentfix the real cause of double velocity (diff)
downloadopensim-SC_OLD-c0b21d92c2219c3bfd69e1467c28f20859dd4dc7.zip
opensim-SC_OLD-c0b21d92c2219c3bfd69e1467c28f20859dd4dc7.tar.gz
opensim-SC_OLD-c0b21d92c2219c3bfd69e1467c28f20859dd4dc7.tar.bz2
opensim-SC_OLD-c0b21d92c2219c3bfd69e1467c28f20859dd4dc7.tar.xz
Merge branch 'avination' into careminster
Conflicts: OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneGraph.cs1
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs24
4 files changed, 19 insertions, 10 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
index 69ce967..0516cb1 100644
--- a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
@@ -65,7 +65,7 @@ namespace OpenSim.Region.Framework.Interfaces
65 /// <param name="AttachmentPt"></param> 65 /// <param name="AttachmentPt"></param>
66 /// <param name="silent"></param> 66 /// <param name="silent"></param>
67 /// <returns>true if the object was successfully attached, false otherwise</returns> 67 /// <returns>true if the object was successfully attached, false otherwise</returns>
68 bool AttachObject(IScenePresence sp, SceneObjectGroup grp, uint AttachmentPt, bool silent); 68 bool AttachObject(IScenePresence sp, SceneObjectGroup grp, uint AttachmentPt, bool silent, bool useAttachmentInfo);
69 69
70 /// <summary> 70 /// <summary>
71 /// Rez an attachment from user inventory and change inventory status to match. 71 /// Rez an attachment from user inventory and change inventory status to match.
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 315b340..9c80d3e 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -2701,7 +2701,7 @@ namespace OpenSim.Region.Framework.Scenes
2701 RootPrim.RemFlag(PrimFlags.TemporaryOnRez); 2701 RootPrim.RemFlag(PrimFlags.TemporaryOnRez);
2702 2702
2703 if (AttachmentsModule != null) 2703 if (AttachmentsModule != null)
2704 AttachmentsModule.AttachObject(sp, grp, 0, false); 2704 AttachmentsModule.AttachObject(sp, grp, 0, false, false);
2705 } 2705 }
2706 else 2706 else
2707 { 2707 {
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index 23a0550..a62c1ac 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -359,7 +359,6 @@ namespace OpenSim.Region.Framework.Scenes
359 if (pa != null && pa.IsPhysical && vel != Vector3.Zero) 359 if (pa != null && pa.IsPhysical && vel != Vector3.Zero)
360 { 360 {
361 sceneObject.RootPart.ApplyImpulse((vel * sceneObject.GetMass()), false); 361 sceneObject.RootPart.ApplyImpulse((vel * sceneObject.GetMass()), false);
362 sceneObject.Velocity = vel;
363 } 362 }
364 363
365 return true; 364 return true;
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index bb8d065..61ef827 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -2640,15 +2640,25 @@ namespace OpenSim.Region.Framework.Scenes
2640 2640
2641 private void SendLandCollisionEvent(scriptEvents ev, ScriptCollidingNotification notify) 2641 private void SendLandCollisionEvent(scriptEvents ev, ScriptCollidingNotification notify)
2642 { 2642 {
2643 if ((ParentGroup.RootPart.ScriptEvents & ev) != 0) 2643 bool sendToRoot = true;
2644 { 2644
2645 ColliderArgs LandCollidingMessage = new ColliderArgs(); 2645 ColliderArgs LandCollidingMessage = new ColliderArgs();
2646 List<DetectedObject> colliding = new List<DetectedObject>(); 2646 List<DetectedObject> colliding = new List<DetectedObject>();
2647 2647
2648 colliding.Add(CreateDetObjectForGround()); 2648 colliding.Add(CreateDetObjectForGround());
2649 LandCollidingMessage.Colliders = colliding; 2649 LandCollidingMessage.Colliders = colliding;
2650 2650
2651 if (Inventory.ContainsScripts())
2652 {
2653 if (!PassCollisions)
2654 sendToRoot = false;
2655 }
2656 if ((ScriptEvents & ev) != 0)
2651 notify(LocalId, LandCollidingMessage); 2657 notify(LocalId, LandCollidingMessage);
2658
2659 if ((ParentGroup.RootPart.ScriptEvents & ev) != 0 && sendToRoot)
2660 {
2661 notify(ParentGroup.RootPart.LocalId, LandCollidingMessage);
2652 } 2662 }
2653 } 2663 }
2654 2664