diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 0ab267a..1859cb1 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1550,6 +1550,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1550 | // Create child agents in neighbouring regions | 1550 | // Create child agents in neighbouring regions |
1551 | if (openChildAgents && !IsChildAgent) | 1551 | if (openChildAgents && !IsChildAgent) |
1552 | { | 1552 | { |
1553 | // Remember in HandleUseCircuitCode, we delayed this to here | ||
1554 | SendInitialDataToMe(); | ||
1553 | 1555 | ||
1554 | IEntityTransferModule m_agentTransfer = m_scene.RequestModuleInterface<IEntityTransferModule>(); | 1556 | IEntityTransferModule m_agentTransfer = m_scene.RequestModuleInterface<IEntityTransferModule>(); |
1555 | if (m_agentTransfer != null) | 1557 | if (m_agentTransfer != null) |
@@ -2308,6 +2310,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2308 | AddToPhysicalScene(false); | 2310 | AddToPhysicalScene(false); |
2309 | 2311 | ||
2310 | Animator.TrySetMovementAnimation("STAND"); | 2312 | Animator.TrySetMovementAnimation("STAND"); |
2313 | TriggerScenePresenceUpdated(); | ||
2311 | } | 2314 | } |
2312 | 2315 | ||
2313 | private SceneObjectPart FindNextAvailableSitTarget(UUID targetID) | 2316 | private SceneObjectPart FindNextAvailableSitTarget(UUID targetID) |
@@ -2406,7 +2409,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2406 | ControllingClient.SendSitResponse( | 2409 | ControllingClient.SendSitResponse( |
2407 | part.UUID, offset, sitOrientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); | 2410 | part.UUID, offset, sitOrientation, false, cameraAtOffset, cameraEyeOffset, forceMouselook); |
2408 | 2411 | ||
2409 | m_requestedSitTargetUUID = targetID; | 2412 | m_requestedSitTargetUUID = part.UUID; |
2410 | 2413 | ||
2411 | HandleAgentSit(ControllingClient, UUID); | 2414 | HandleAgentSit(ControllingClient, UUID); |
2412 | 2415 | ||
@@ -2434,7 +2437,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2434 | if (part != null) | 2437 | if (part != null) |
2435 | { | 2438 | { |
2436 | m_requestedSitTargetID = part.LocalId; | 2439 | m_requestedSitTargetID = part.LocalId; |
2437 | m_requestedSitTargetUUID = targetID; | 2440 | m_requestedSitTargetUUID = part.UUID; |
2438 | 2441 | ||
2439 | } | 2442 | } |
2440 | else | 2443 | else |
@@ -2633,6 +2636,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2633 | } | 2636 | } |
2634 | Animator.TrySetMovementAnimation(sitAnimation); | 2637 | Animator.TrySetMovementAnimation(sitAnimation); |
2635 | SendAvatarDataToAllAgents(); | 2638 | SendAvatarDataToAllAgents(); |
2639 | TriggerScenePresenceUpdated(); | ||
2636 | } | 2640 | } |
2637 | } | 2641 | } |
2638 | 2642 | ||
@@ -2641,6 +2645,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2641 | // m_updateCount = 0; // Kill animation update burst so that the SIT_G.. will stick.. | 2645 | // m_updateCount = 0; // Kill animation update burst so that the SIT_G.. will stick.. |
2642 | m_AngularVelocity = Vector3.Zero; | 2646 | m_AngularVelocity = Vector3.Zero; |
2643 | Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED"); | 2647 | Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED"); |
2648 | TriggerScenePresenceUpdated(); | ||
2644 | SitGround = true; | 2649 | SitGround = true; |
2645 | RemoveFromPhysicalScene(); | 2650 | RemoveFromPhysicalScene(); |
2646 | } | 2651 | } |
@@ -2657,11 +2662,13 @@ namespace OpenSim.Region.Framework.Scenes | |||
2657 | public void HandleStartAnim(IClientAPI remoteClient, UUID animID) | 2662 | public void HandleStartAnim(IClientAPI remoteClient, UUID animID) |
2658 | { | 2663 | { |
2659 | Animator.AddAnimation(animID, UUID.Zero); | 2664 | Animator.AddAnimation(animID, UUID.Zero); |
2665 | TriggerScenePresenceUpdated(); | ||
2660 | } | 2666 | } |
2661 | 2667 | ||
2662 | public void HandleStopAnim(IClientAPI remoteClient, UUID animID) | 2668 | public void HandleStopAnim(IClientAPI remoteClient, UUID animID) |
2663 | { | 2669 | { |
2664 | Animator.RemoveAnimation(animID, false); | 2670 | Animator.RemoveAnimation(animID, false); |
2671 | TriggerScenePresenceUpdated(); | ||
2665 | } | 2672 | } |
2666 | 2673 | ||
2667 | public void avnHandleChangeAnim(UUID animID, bool addRemove,bool sendPack) | 2674 | public void avnHandleChangeAnim(UUID animID, bool addRemove,bool sendPack) |
@@ -3347,10 +3354,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3347 | if (byebyeRegions.Count > 0) | 3354 | if (byebyeRegions.Count > 0) |
3348 | { | 3355 | { |
3349 | m_log.Debug("[SCENE PRESENCE]: Closing " + byebyeRegions.Count + " child agents"); | 3356 | m_log.Debug("[SCENE PRESENCE]: Closing " + byebyeRegions.Count + " child agents"); |
3350 | Util.FireAndForget(delegate | 3357 | |
3351 | { | 3358 | m_scene.SceneGridService.SendCloseChildAgentConnections(ControllingClient.AgentId, byebyeRegions); |
3352 | m_scene.SceneGridService.SendCloseChildAgentConnections(ControllingClient.AgentId, byebyeRegions); | ||
3353 | }); | ||
3354 | } | 3359 | } |
3355 | 3360 | ||
3356 | foreach (ulong handle in byebyeRegions) | 3361 | foreach (ulong handle in byebyeRegions) |
@@ -3693,7 +3698,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3693 | 3698 | ||
3694 | // if (m_updateCount > 0) | 3699 | // if (m_updateCount > 0) |
3695 | // { | 3700 | // { |
3696 | Animator.UpdateMovementAnimations(); | 3701 | if (Animator.UpdateMovementAnimations()) |
3702 | TriggerScenePresenceUpdated(); | ||
3697 | // m_updateCount--; | 3703 | // m_updateCount--; |
3698 | // } | 3704 | // } |
3699 | 3705 | ||