back to sending attachment sog kills in place of the hack. This is the

official way of doing it
avinationmerge
UbitUmarov 2014-08-23 12:03:55 +01:00
parent 1aa335078a
commit 8fd836c299
1 changed files with 8 additions and 5 deletions

View File

@ -5965,22 +5965,25 @@ namespace OpenSim.Region.Framework.Scenes
Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true); Scene.AttachmentsModule.DeleteAttachmentsFromScene(this, true);
} }
public void SendFullKillsTo(ScenePresence p) // kill with attachs root kills
public void SendKillTo(ScenePresence p)
{ {
List<uint> ids = new List<uint>(); List<uint> ids = new List<uint>(m_attachments.Count + 1);
foreach (SceneObjectGroup sog in m_attachments)
p.ControllingClient.SendPartFullUpdate(sog.RootPart, LocalId + 1);
ids.Add(LocalId); ids.Add(LocalId);
foreach (SceneObjectGroup sog in m_attachments)
ids.Add(sog.RootPart.LocalId);
p.ControllingClient.SendKillObject(ids); p.ControllingClient.SendKillObject(ids);
} }
/*
// kill with hack
public void SendKillTo(ScenePresence p) public void SendKillTo(ScenePresence p)
{ {
foreach (SceneObjectGroup sog in m_attachments) foreach (SceneObjectGroup sog in m_attachments)
p.ControllingClient.SendPartFullUpdate(sog.RootPart, LocalId + 1); p.ControllingClient.SendPartFullUpdate(sog.RootPart, LocalId + 1);
p.ControllingClient.SendKillObject(new List<uint> { LocalId }); p.ControllingClient.SendKillObject(new List<uint> { LocalId });
} }
*/
public void SendViewTo(ScenePresence p) public void SendViewTo(ScenePresence p)
{ {
SendAvatarDataToAgentNF(p); SendAvatarDataToAgentNF(p);