diff options
author | Justin Clark-Casey (justincc) | 2013-08-21 21:35:03 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2013-08-21 21:35:03 +0100 |
commit | 1f39a763a5186c7c51e10b5b055394672cc6c54e (patch) | |
tree | 976f85d425fe2596245c5e9867cbc4c3e12917b6 /OpenSim/Region/Framework | |
parent | * Fix some threading issues in BulletXNA (the managed bullet library), this s... (diff) | |
download | opensim-SC_OLD-1f39a763a5186c7c51e10b5b055394672cc6c54e.zip opensim-SC_OLD-1f39a763a5186c7c51e10b5b055394672cc6c54e.tar.gz opensim-SC_OLD-1f39a763a5186c7c51e10b5b055394672cc6c54e.tar.bz2 opensim-SC_OLD-1f39a763a5186c7c51e10b5b055394672cc6c54e.tar.xz |
Don't allow users to attempt to sit on objects in a child region without going to that region first.
If this is attempted, they get a "Try moving closer. Can't sit on object because it is not in the same region as you." message instead, which is the same as current ll grid.
Sitting on ground is okay, since viewer navigates avatar to required region first before sitting.
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 37e5286..4fc207a 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -2297,6 +2297,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2297 | 2297 | ||
2298 | public void HandleAgentRequestSit(IClientAPI remoteClient, UUID agentID, UUID targetID, Vector3 offset) | 2298 | public void HandleAgentRequestSit(IClientAPI remoteClient, UUID agentID, UUID targetID, Vector3 offset) |
2299 | { | 2299 | { |
2300 | if (IsChildAgent) | ||
2301 | return; | ||
2302 | |||
2300 | if (ParentID != 0) | 2303 | if (ParentID != 0) |
2301 | { | 2304 | { |
2302 | if (ParentPart.UUID == targetID) | 2305 | if (ParentPart.UUID == targetID) |
@@ -2523,6 +2526,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2523 | 2526 | ||
2524 | public void HandleAgentSit(IClientAPI remoteClient, UUID agentID) | 2527 | public void HandleAgentSit(IClientAPI remoteClient, UUID agentID) |
2525 | { | 2528 | { |
2529 | if (IsChildAgent) | ||
2530 | return; | ||
2531 | |||
2526 | SceneObjectPart part = m_scene.GetSceneObjectPart(m_requestedSitTargetID); | 2532 | SceneObjectPart part = m_scene.GetSceneObjectPart(m_requestedSitTargetID); |
2527 | 2533 | ||
2528 | if (part != null) | 2534 | if (part != null) |
@@ -2583,6 +2589,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
2583 | 2589 | ||
2584 | public void HandleAgentSitOnGround() | 2590 | public void HandleAgentSitOnGround() |
2585 | { | 2591 | { |
2592 | if (IsChildAgent) | ||
2593 | return; | ||
2594 | |||
2586 | // m_updateCount = 0; // Kill animation update burst so that the SIT_G.. will stick.. | 2595 | // m_updateCount = 0; // Kill animation update burst so that the SIT_G.. will stick.. |
2587 | m_AngularVelocity = Vector3.Zero; | 2596 | m_AngularVelocity = Vector3.Zero; |
2588 | Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED"); | 2597 | Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED"); |