aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2013-11-23 00:53:09 +0000
committerJustin Clark-Casey (justincc)2013-11-23 00:53:09 +0000
commitff4e7de7769b7eaa1b4fd3917e59f362b708226a (patch)
tree4fce158779281bd64c1ba06439f9b264bb7aa037 /OpenSim/Region/Framework/Scenes
parentAdded admin_authenticate_user command (diff)
downloadopensim-SC_OLD-ff4e7de7769b7eaa1b4fd3917e59f362b708226a.zip
opensim-SC_OLD-ff4e7de7769b7eaa1b4fd3917e59f362b708226a.tar.gz
opensim-SC_OLD-ff4e7de7769b7eaa1b4fd3917e59f362b708226a.tar.bz2
opensim-SC_OLD-ff4e7de7769b7eaa1b4fd3917e59f362b708226a.tar.xz
Fix issue where sitting on non-root linked prims would send camera to wrong position in third-person and mouselook
We now specify sits as offsets from the root prim, as the viewer expects.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs9
1 files changed, 7 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 7243db1..ea8e4fe 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -2312,8 +2312,10 @@ namespace OpenSim.Region.Framework.Scenes
2312 cameraEyeOffset = part.GetCameraEyeOffset(); 2312 cameraEyeOffset = part.GetCameraEyeOffset();
2313 forceMouselook = part.GetForceMouselook(); 2313 forceMouselook = part.GetForceMouselook();
2314 2314
2315 // An viewer expects to specify sit positions as offsets to the root prim, even if a child prim is
2316 // being sat upon.
2315 ControllingClient.SendSitResponse( 2317 ControllingClient.SendSitResponse(
2316 part.UUID, offset, sitOrientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); 2318 part.ParentGroup.UUID, offset, sitOrientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook);
2317 2319
2318 m_requestedSitTargetUUID = part.UUID; 2320 m_requestedSitTargetUUID = part.UUID;
2319 2321
@@ -2592,7 +2594,10 @@ namespace OpenSim.Region.Framework.Scenes
2592 } 2594 }
2593 else 2595 else
2594 { 2596 {
2595 m_pos -= part.AbsolutePosition; 2597 // An viewer expects to specify sit positions as offsets to the root prim, even if a child prim is
2598 // being sat upon.
2599 m_pos -= part.GroupPosition;
2600
2596 ParentPosition = part.AbsolutePosition; 2601 ParentPosition = part.AbsolutePosition;
2597 2602
2598// m_log.DebugFormat( 2603// m_log.DebugFormat(