diff options
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 8 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 3 |
2 files changed, 9 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 8fa7880..aab6a49 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -2992,10 +2992,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
2992 | { | 2992 | { |
2993 | if (!m_rootPart.BlockGrab) | 2993 | if (!m_rootPart.BlockGrab) |
2994 | { | 2994 | { |
2995 | Vector3 llmoveforce = pos - AbsolutePosition; | 2995 | /* Vector3 llmoveforce = pos - AbsolutePosition; |
2996 | Vector3 grabforce = llmoveforce; | 2996 | Vector3 grabforce = llmoveforce; |
2997 | grabforce = (grabforce / 10) * pa.Mass; | 2997 | grabforce = (grabforce / 10) * pa.Mass; |
2998 | pa.AddForce(grabforce, true); | 2998 | */ |
2999 | // empirically convert distance diference to a impulse | ||
3000 | Vector3 grabforce = pos - AbsolutePosition; | ||
3001 | grabforce = grabforce * (pa.Mass/ 10.0f); | ||
3002 | pa.AddForce(grabforce, false); | ||
2999 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); | 3003 | m_scene.PhysicsScene.AddPhysicsActorTaint(pa); |
3000 | } | 3004 | } |
3001 | } | 3005 | } |
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index a810de2..87b4d9f 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -2383,7 +2383,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
2383 | 2383 | ||
2384 | Vector3 up = new Vector3((float)x, (float)y, (float)z); | 2384 | Vector3 up = new Vector3((float)x, (float)y, (float)z); |
2385 | Vector3 sitOffset = up * Appearance.AvatarHeight * 0.02638f; | 2385 | Vector3 sitOffset = up * Appearance.AvatarHeight * 0.02638f; |
2386 | |||
2386 | m_pos = sitTargetPos + sitOffset + SIT_TARGET_ADJUSTMENT; | 2387 | m_pos = sitTargetPos + sitOffset + SIT_TARGET_ADJUSTMENT; |
2388 | |||
2389 | // m_pos = sitTargetPos + SIT_TARGET_ADJUSTMENT - sitOffset; | ||
2387 | Rotation = sitTargetOrient; | 2390 | Rotation = sitTargetOrient; |
2388 | ParentPosition = part.AbsolutePosition; | 2391 | ParentPosition = part.AbsolutePosition; |
2389 | part.ParentGroup.AddAvatar(UUID); | 2392 | part.ParentGroup.AddAvatar(UUID); |