Continuation of previous checkin. Found more places where ForEachScenePresence can be changed to ForEachRootScenePresence.

remove-scene-viewer
Dan Lake 2011-10-27 01:25:12 -07:00
parent b98613091c
commit 06577d7299
4 changed files with 39 additions and 57 deletions

View File

@ -98,10 +98,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
public void SendGeneralAlert(string message)
{
m_scene.ForEachScenePresence(delegate(ScenePresence presence)
m_scene.ForEachRootScenePresence(delegate(ScenePresence presence)
{
if (!presence.IsChildAgent)
presence.ControllingClient.SendAlertMessage(message);
presence.ControllingClient.SendAlertMessage(message);
});
}
@ -163,10 +162,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
public void SendNotificationToUsersInRegion(
UUID fromAvatarID, string fromAvatarName, string message)
{
m_scene.ForEachScenePresence(delegate(ScenePresence presence)
m_scene.ForEachRootScenePresence(delegate(ScenePresence presence)
{
if (!presence.IsChildAgent)
presence.ControllingClient.SendBlueBoxMessage(fromAvatarID, fromAvatarName, message);
presence.ControllingClient.SendBlueBoxMessage(fromAvatarID, fromAvatarName, message);
});
}

View File

@ -1440,10 +1440,9 @@ namespace OpenSim.Region.Framework.Scenes
if (volume < 0)
volume = 0;
m_parentGroup.Scene.ForEachScenePresence(delegate(ScenePresence sp)
m_parentGroup.Scene.ForEachRootScenePresence(delegate(ScenePresence sp)
{
if (!sp.IsChildAgent)
sp.ControllingClient.SendAttachedSoundGainChange(UUID, (float)volume);
sp.ControllingClient.SendAttachedSoundGainChange(UUID, (float)volume);
});
}
@ -2676,10 +2675,8 @@ namespace OpenSim.Region.Framework.Scenes
}
}
m_parentGroup.Scene.ForEachScenePresence(delegate(ScenePresence sp)
m_parentGroup.Scene.ForEachRootScenePresence(delegate(ScenePresence sp)
{
if (sp.IsChildAgent)
return;
if (!(Util.GetDistanceTo(sp.AbsolutePosition, AbsolutePosition) >= 100))
sp.ControllingClient.SendPreLoadSound(objectID, objectID, soundID);
});

View File

@ -2598,19 +2598,15 @@ namespace OpenSim.Region.Framework.Scenes
public void SendOtherAgentsAvatarDataToMe()
{
int count = 0;
m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence)
{
// only send information about root agents
if (scenePresence.IsChildAgent)
return;
m_scene.ForEachRootScenePresence(delegate(ScenePresence scenePresence)
{
// only send information about other root agents
if (scenePresence.UUID == UUID)
return;
// only send information about other root agents
if (scenePresence.UUID == UUID)
return;
scenePresence.SendAvatarDataToAgent(this);
count++;
});
scenePresence.SendAvatarDataToAgent(this);
count++;
});
m_scene.StatsReporter.AddAgentUpdates(count);
}
@ -2644,13 +2640,14 @@ namespace OpenSim.Region.Framework.Scenes
int count = 0;
m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence)
{
if (scenePresence.UUID == UUID)
return;
{
// only send information to other root agents
if (scenePresence.UUID == UUID)
return;
SendAppearanceToAgent(scenePresence);
count++;
});
SendAppearanceToAgent(scenePresence);
count++;
});
m_scene.StatsReporter.AddAgentUpdates(count);
}
@ -2664,19 +2661,15 @@ namespace OpenSim.Region.Framework.Scenes
//m_log.DebugFormat("[SCENE PRESENCE] SendOtherAgentsAppearanceToMe: {0} ({1})", Name, UUID);
int count = 0;
m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence)
{
// only send information about root agents
if (scenePresence.IsChildAgent)
return;
m_scene.ForEachRootScenePresence(delegate(ScenePresence scenePresence)
{
// only send information about other root agents
if (scenePresence.UUID == UUID)
return;
// only send information about other root agents
if (scenePresence.UUID == UUID)
return;
scenePresence.SendAppearanceToAgent(this);
count++;
});
scenePresence.SendAppearanceToAgent(this);
count++;
});
m_scene.StatsReporter.AddAgentUpdates(count);
}

View File

@ -873,10 +873,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
CheckThreatLevel(ThreatLevel.None, "osGetAgents");
LSL_List result = new LSL_List();
World.ForEachScenePresence(delegate(ScenePresence sp)
World.ForEachRootScenePresence(delegate(ScenePresence sp)
{
if (!sp.IsChildAgent)
result.Add(new LSL_String(sp.Name));
result.Add(new LSL_String(sp.Name));
});
return result;
}
@ -2582,11 +2581,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
CheckThreatLevel(ThreatLevel.Severe, "osKickAvatar");
if (World.Permissions.CanRunConsoleCommand(m_host.OwnerID))
{
World.ForEachScenePresence(delegate(ScenePresence sp)
World.ForEachRootScenePresence(delegate(ScenePresence sp)
{
if (!sp.IsChildAgent &&
sp.Firstname == FirstName &&
sp.Lastname == SurName)
if (sp.Firstname == FirstName && sp.Lastname == SurName)
{
// kick client...
if (alert != null)
@ -2718,17 +2715,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
CheckThreatLevel(ThreatLevel.None, "osGetAvatarList");
LSL_List result = new LSL_List();
World.ForEachScenePresence(delegate (ScenePresence avatar)
World.ForEachRootScenePresence(delegate (ScenePresence avatar)
{
if (avatar != null && avatar.UUID != m_host.OwnerID)
{
if (avatar.IsChildAgent == false)
{
result.Add(new LSL_String(avatar.UUID.ToString()));
OpenMetaverse.Vector3 ap = avatar.AbsolutePosition;
result.Add(new LSL_Vector(ap.X, ap.Y, ap.Z));
result.Add(new LSL_String(avatar.Name));
}
result.Add(new LSL_String(avatar.UUID.ToString()));
OpenMetaverse.Vector3 ap = avatar.AbsolutePosition;
result.Add(new LSL_Vector(ap.X, ap.Y, ap.Z));
result.Add(new LSL_String(avatar.Name));
}
});