Only send dialogs and notices to root agents, not child agents

soprefactor
Justin Clark-Casey (justincc) 2010-05-12 21:42:23 +01:00
parent 1d6ab445ab
commit 78a0fd5281
1 changed files with 7 additions and 9 deletions

View File

@ -81,14 +81,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
{
ScenePresence sp = m_scene.GetScenePresence(agentID);
if (sp != null)
if (sp != null && !sp.IsChildAgent)
sp.ControllingClient.SendAgentAlertMessage(message, modal);
}
public void SendAlertToUser(string firstName, string lastName, string message, bool modal)
{
ScenePresence presence = m_scene.GetScenePresence(firstName, lastName);
if(presence != null)
if (presence != null && !presence.IsChildAgent)
presence.ControllingClient.SendAgentAlertMessage(message, modal);
}
@ -119,7 +119,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
}
ScenePresence sp = m_scene.GetScenePresence(avatarID);
if (sp != null)
if (sp != null && !sp.IsChildAgent)
sp.ControllingClient.SendDialog(objectName, objectID, ownerFirstName, ownerLastName, message, textureID, ch, buttonlabels);
}
@ -128,13 +128,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
{
ScenePresence sp = m_scene.GetScenePresence(avatarID);
if (sp != null)
if (sp != null && !sp.IsChildAgent)
sp.ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned, message, url);
}
public void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid)
{
UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerid);
UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerid);
string ownerFirstName, ownerLastName;
if (account != null)
{
@ -147,12 +147,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
ownerLastName = "user)";
}
ScenePresence sp = m_scene.GetScenePresence(avatarid);
if (sp != null) {
if (sp != null && !sp.IsChildAgent)
sp.ControllingClient.SendTextBoxRequest(message, chatChannel, name, ownerFirstName, ownerLastName, objectid);
}
}
public void SendNotificationToUsersInRegion(
@ -207,4 +205,4 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
return result;
}
}
}
}