diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 5aeee52..8ed58a6 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -3030,10 +3030,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
3030 | { | 3030 | { |
3031 | if (!m_rootPart.BlockGrab) | 3031 | if (!m_rootPart.BlockGrab) |
3032 | { | 3032 | { |
3033 | Vector3 llmoveforce = pos - AbsolutePosition; | 3033 | /* Vector3 llmoveforce = pos - AbsolutePosition; |
3034 | Vector3 grabforce = llmoveforce; | 3034 | Vector3 grabforce = llmoveforce; |
3035 | grabforce = (grabforce / 10) * pa.Mass; | 3035 | grabforce = (grabforce / 10) * pa.Mass; |
3036 | pa.AddForce(grabforce, true); | 3036 | */ |
3037 | // empirically convert distance diference to a impulse | ||
3038 | Vector3 grabforce = pos - AbsolutePosition; | ||
3039 | grabforce = grabforce * (pa.Mass/ 10.0f); | ||
3040 | pa.AddForce(grabforce, false); | ||
3037 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); | 3041 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); |
3038 | } | 3042 | } |
3039 | } | 3043 | } |