aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorubit2013-01-03 04:33:50 +0100
committerubit2013-01-03 04:33:50 +0100
commit1fffdc38660ddb69a8062f0ea4bbf79969aafb0c (patch)
treeae342d819790096a2fd4b2e209c97274fa23ee4d /OpenSim
parentMerge branch 'ubitwork' of ssh://3dhosting.de/var/git/careminster into ubitwork (diff)
parentmake ResetMoveToTarget cancel any 'force' waiting to be applied to avatar (diff)
downloadopensim-SC_OLD-1fffdc38660ddb69a8062f0ea4bbf79969aafb0c.zip
opensim-SC_OLD-1fffdc38660ddb69a8062f0ea4bbf79969aafb0c.tar.gz
opensim-SC_OLD-1fffdc38660ddb69a8062f0ea4bbf79969aafb0c.tar.bz2
opensim-SC_OLD-1fffdc38660ddb69a8062f0ea4bbf79969aafb0c.tar.xz
Merge branch 'ubitwork' of ssh://3dhosting.de/var/git/careminster into ubitwork
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs21
1 files changed, 18 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 2a39ffd..c16c544 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1990,7 +1990,8 @@ namespace OpenSim.Region.Framework.Scenes
1990// m_log.DebugFormat("[SCENE PRESENCE]: Resetting move to target for {0}", Name); 1990// m_log.DebugFormat("[SCENE PRESENCE]: Resetting move to target for {0}", Name);
1991 1991
1992 MovingToTarget = false; 1992 MovingToTarget = false;
1993 MoveToPositionTarget = Vector3.Zero; 1993// MoveToPositionTarget = Vector3.Zero;
1994 m_forceToApply = null; // cancel possible last action
1994 1995
1995 // We need to reset the control flag as the ScenePresenceAnimator uses this to determine the correct 1996 // We need to reset the control flag as the ScenePresenceAnimator uses this to determine the correct
1996 // resting animation (e.g. hover or stand). NPCs don't have a client that will quickly reset this flag. 1997 // resting animation (e.g. hover or stand). NPCs don't have a client that will quickly reset this flag.
@@ -2140,12 +2141,18 @@ namespace OpenSim.Region.Framework.Scenes
2140 2141
2141 if (canSit) 2142 if (canSit)
2142 { 2143 {
2144
2143 if (PhysicsActor != null) 2145 if (PhysicsActor != null)
2144 { 2146 {
2145 // We can remove the physicsActor until they stand up. 2147 // We can remove the physicsActor until they stand up.
2146 RemoveFromPhysicalScene(); 2148 RemoveFromPhysicalScene();
2147 } 2149 }
2148 2150
2151 if (MovingToTarget)
2152 ResetMoveToTarget();
2153
2154 Velocity = Vector3.Zero;
2155
2149 part.AddSittingAvatar(UUID); 2156 part.AddSittingAvatar(UUID);
2150 2157
2151 cameraAtOffset = part.GetCameraAtOffset(); 2158 cameraAtOffset = part.GetCameraAtOffset();
@@ -2230,6 +2237,7 @@ namespace OpenSim.Region.Framework.Scenes
2230 return true; 2237 return true;
2231 } 2238 }
2232 2239
2240
2233 // not doing autopilot 2241 // not doing autopilot
2234 m_requestedSitTargetID = 0; 2242 m_requestedSitTargetID = 0;
2235 2243
@@ -2259,8 +2267,16 @@ namespace OpenSim.Region.Framework.Scenes
2259 2267
2260// m_log.InfoFormat("physsit {0} {1}", offset.ToString(),Orientation.ToString()); 2268// m_log.InfoFormat("physsit {0} {1}", offset.ToString(),Orientation.ToString());
2261 2269
2270 RemoveFromPhysicalScene();
2271
2272 if (MovingToTarget)
2273 ResetMoveToTarget();
2274
2275 Velocity = Vector3.Zero;
2276
2262 part.AddSittingAvatar(UUID); 2277 part.AddSittingAvatar(UUID);
2263 2278
2279
2264 Vector3 cameraAtOffset = part.GetCameraAtOffset(); 2280 Vector3 cameraAtOffset = part.GetCameraAtOffset();
2265 Vector3 cameraEyeOffset = part.GetCameraEyeOffset(); 2281 Vector3 cameraEyeOffset = part.GetCameraEyeOffset();
2266 bool forceMouselook = part.GetForceMouselook(); 2282 bool forceMouselook = part.GetForceMouselook();
@@ -2269,8 +2285,6 @@ namespace OpenSim.Region.Framework.Scenes
2269 part.UUID, offset, Orientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); 2285 part.UUID, offset, Orientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook);
2270 2286
2271 // not using autopilot 2287 // not using autopilot
2272 Velocity = Vector3.Zero;
2273 RemoveFromPhysicalScene();
2274 2288
2275 Rotation = Orientation; 2289 Rotation = Orientation;
2276 m_pos = offset; 2290 m_pos = offset;
@@ -2317,6 +2331,7 @@ namespace OpenSim.Region.Framework.Scenes
2317 return; 2331 return;
2318 } 2332 }
2319 2333
2334
2320 if (part.SitTargetAvatar == UUID) 2335 if (part.SitTargetAvatar == UUID)
2321 { 2336 {
2322 Vector3 sitTargetPos = part.SitTargetPosition; 2337 Vector3 sitTargetPos = part.SitTargetPosition;