diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 53 |
1 files changed, 23 insertions, 30 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 0f13050..35870c5 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -2950,19 +2950,15 @@ namespace OpenSim.Region.Framework.Scenes | |||
2950 | public void SendOtherAgentsAvatarDataToMe() | 2950 | public void SendOtherAgentsAvatarDataToMe() |
2951 | { | 2951 | { |
2952 | int count = 0; | 2952 | int count = 0; |
2953 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) | 2953 | m_scene.ForEachRootScenePresence(delegate(ScenePresence scenePresence) |
2954 | { | 2954 | { |
2955 | // only send information about root agents | 2955 | // only send information about other root agents |
2956 | if (scenePresence.IsChildAgent) | 2956 | if (scenePresence.UUID == UUID) |
2957 | return; | 2957 | return; |
2958 | |||
2959 | // only send information about other root agents | ||
2960 | if (scenePresence.UUID == UUID) | ||
2961 | return; | ||
2962 | 2958 | ||
2963 | scenePresence.SendAvatarDataToAgent(this); | 2959 | scenePresence.SendAvatarDataToAgent(this); |
2964 | count++; | 2960 | count++; |
2965 | }); | 2961 | }); |
2966 | 2962 | ||
2967 | m_scene.StatsReporter.AddAgentUpdates(count); | 2963 | m_scene.StatsReporter.AddAgentUpdates(count); |
2968 | } | 2964 | } |
@@ -2996,13 +2992,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
2996 | 2992 | ||
2997 | int count = 0; | 2993 | int count = 0; |
2998 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) | 2994 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) |
2999 | { | 2995 | { |
3000 | if (scenePresence.UUID == UUID) | 2996 | // only send information to other root agents |
3001 | return; | 2997 | if (scenePresence.UUID == UUID) |
2998 | return; | ||
3002 | 2999 | ||
3003 | SendAppearanceToAgent(scenePresence); | 3000 | SendAppearanceToAgent(scenePresence); |
3004 | count++; | 3001 | count++; |
3005 | }); | 3002 | }); |
3006 | 3003 | ||
3007 | m_scene.StatsReporter.AddAgentUpdates(count); | 3004 | m_scene.StatsReporter.AddAgentUpdates(count); |
3008 | } | 3005 | } |
@@ -3016,19 +3013,15 @@ namespace OpenSim.Region.Framework.Scenes | |||
3016 | //m_log.DebugFormat("[SCENE PRESENCE] SendOtherAgentsAppearanceToMe: {0} ({1})", Name, UUID); | 3013 | //m_log.DebugFormat("[SCENE PRESENCE] SendOtherAgentsAppearanceToMe: {0} ({1})", Name, UUID); |
3017 | 3014 | ||
3018 | int count = 0; | 3015 | int count = 0; |
3019 | m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) | 3016 | m_scene.ForEachRootScenePresence(delegate(ScenePresence scenePresence) |
3020 | { | 3017 | { |
3021 | // only send information about root agents | 3018 | // only send information about other root agents |
3022 | if (scenePresence.IsChildAgent) | 3019 | if (scenePresence.UUID == UUID) |
3023 | return; | 3020 | return; |
3024 | |||
3025 | // only send information about other root agents | ||
3026 | if (scenePresence.UUID == UUID) | ||
3027 | return; | ||
3028 | 3021 | ||
3029 | scenePresence.SendAppearanceToAgent(this); | 3022 | scenePresence.SendAppearanceToAgent(this); |
3030 | count++; | 3023 | count++; |
3031 | }); | 3024 | }); |
3032 | 3025 | ||
3033 | m_scene.StatsReporter.AddAgentUpdates(count); | 3026 | m_scene.StatsReporter.AddAgentUpdates(count); |
3034 | } | 3027 | } |