aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorUbitUmarov2013-01-03 02:25:27 +0000
committerUbitUmarov2013-01-03 02:25:27 +0000
commitd40cdd26496c267b7de4cf7005eb6c933d7ad238 (patch)
tree8e22247e95ea19ebfff17c58526359efe9808592
parenti try to fix avatar orientation in some cases.. (diff)
downloadopensim-SC-d40cdd26496c267b7de4cf7005eb6c933d7ad238.zip
opensim-SC-d40cdd26496c267b7de4cf7005eb6c933d7ad238.tar.gz
opensim-SC-d40cdd26496c267b7de4cf7005eb6c933d7ad238.tar.bz2
opensim-SC-d40cdd26496c267b7de4cf7005eb6c933d7ad238.tar.xz
cancel MoveToTarget (viewer 'go here") on sits
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs24
1 files changed, 22 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 2a39ffd..704bad8 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -2140,12 +2140,21 @@ namespace OpenSim.Region.Framework.Scenes
2140 2140
2141 if (canSit) 2141 if (canSit)
2142 { 2142 {
2143
2143 if (PhysicsActor != null) 2144 if (PhysicsActor != null)
2144 { 2145 {
2145 // We can remove the physicsActor until they stand up. 2146 // We can remove the physicsActor until they stand up.
2146 RemoveFromPhysicalScene(); 2147 RemoveFromPhysicalScene();
2147 } 2148 }
2148 2149
2150 if (MovingToTarget)
2151 {
2152 ResetMoveToTarget();
2153 m_forceToApply = null;
2154 }
2155
2156 Velocity = Vector3.Zero;
2157
2149 part.AddSittingAvatar(UUID); 2158 part.AddSittingAvatar(UUID);
2150 2159
2151 cameraAtOffset = part.GetCameraAtOffset(); 2160 cameraAtOffset = part.GetCameraAtOffset();
@@ -2230,6 +2239,7 @@ namespace OpenSim.Region.Framework.Scenes
2230 return true; 2239 return true;
2231 } 2240 }
2232 2241
2242
2233 // not doing autopilot 2243 // not doing autopilot
2234 m_requestedSitTargetID = 0; 2244 m_requestedSitTargetID = 0;
2235 2245
@@ -2259,8 +2269,19 @@ namespace OpenSim.Region.Framework.Scenes
2259 2269
2260// m_log.InfoFormat("physsit {0} {1}", offset.ToString(),Orientation.ToString()); 2270// m_log.InfoFormat("physsit {0} {1}", offset.ToString(),Orientation.ToString());
2261 2271
2272 RemoveFromPhysicalScene();
2273
2274 if (MovingToTarget)
2275 {
2276 ResetMoveToTarget();
2277 m_forceToApply = null;
2278 }
2279
2280 Velocity = Vector3.Zero;
2281
2262 part.AddSittingAvatar(UUID); 2282 part.AddSittingAvatar(UUID);
2263 2283
2284
2264 Vector3 cameraAtOffset = part.GetCameraAtOffset(); 2285 Vector3 cameraAtOffset = part.GetCameraAtOffset();
2265 Vector3 cameraEyeOffset = part.GetCameraEyeOffset(); 2286 Vector3 cameraEyeOffset = part.GetCameraEyeOffset();
2266 bool forceMouselook = part.GetForceMouselook(); 2287 bool forceMouselook = part.GetForceMouselook();
@@ -2269,8 +2290,6 @@ namespace OpenSim.Region.Framework.Scenes
2269 part.UUID, offset, Orientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); 2290 part.UUID, offset, Orientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook);
2270 2291
2271 // not using autopilot 2292 // not using autopilot
2272 Velocity = Vector3.Zero;
2273 RemoveFromPhysicalScene();
2274 2293
2275 Rotation = Orientation; 2294 Rotation = Orientation;
2276 m_pos = offset; 2295 m_pos = offset;
@@ -2317,6 +2336,7 @@ namespace OpenSim.Region.Framework.Scenes
2317 return; 2336 return;
2318 } 2337 }
2319 2338
2339
2320 if (part.SitTargetAvatar == UUID) 2340 if (part.SitTargetAvatar == UUID)
2321 { 2341 {
2322 Vector3 sitTargetPos = part.SitTargetPosition; 2342 Vector3 sitTargetPos = part.SitTargetPosition;