remove duplicate object chat messages ( mantis 7745 ),fix llRegionSay, this are still merge issues

LSLKeyTest
UbitUmarov 2015-11-20 00:01:13 +00:00
parent 36f7e96392
commit 278687b1e8
2 changed files with 12 additions and 7 deletions

View File

@ -311,6 +311,7 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
// Determine which listen event filters match the given set of arguments, this results
// in a limited set of listeners, each belonging a host. If the host is in range, add them
// to the pending queue.
foreach (ListenerInfo li
in m_listenerManager.GetListeners(UUID.Zero, channel,
name, id, msg))
@ -386,6 +387,10 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
return true;
}
// for now messages to prims don't cross regions
if(sp.IsChildAgent)
return false;
List<SceneObjectGroup> attachments = sp.GetAttachments();
if (attachments.Count == 0)

View File

@ -1264,8 +1264,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
m_host.AddScriptLPS(1);
World.SimChat(Utils.StringToBytes(text),
ChatTypeEnum.Region, channelID, m_host.ParentGroup.RootPart.AbsolutePosition, m_host.Name, m_host.UUID, false);
// debug channel is also sent to avatars
if (channelID == ScriptBaseClass.DEBUG_CHANNEL)
{
World.SimChat(Utils.StringToBytes(text),
ChatTypeEnum.Shout, channelID, m_host.ParentGroup.RootPart.AbsolutePosition, m_host.Name, m_host.UUID, true);
}
IWorldComm wComm = m_ScriptEngine.World.RequestModuleInterface<IWorldComm>();
if (wComm != null)
@ -1280,16 +1285,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
m_host.AddScriptLPS(1);
if (channel == ScriptBaseClass.DEBUG_CHANNEL)
{
return;
}
UUID TargetID;
UUID.TryParse(target, out TargetID);
World.SimChatToAgent(TargetID, Utils.StringToBytes(msg),
channel, m_host.ParentGroup.RootPart.AbsolutePosition, m_host.Name, m_host.UUID, true);
IWorldComm wComm = m_ScriptEngine.World.RequestModuleInterface<IWorldComm>();
if (wComm != null)
wComm.DeliverMessageTo(TargetID, channel, m_host.AbsolutePosition, m_host.Name, m_host.UUID, msg);