From f248f8bf316ed66243535775a08e26c91df3bd7d Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Thu, 14 Jun 2012 02:26:38 +0100 Subject: [PATCH] Fix a bug where scene objects attached as HUDs through scripts would not disappear for other avatars. We do this by sending a kill message for that object to all other avatars apart from the one that has the hud. --- .../Avatar/Attachments/AttachmentsModule.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index 75ade120a4..9669baaddd 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs @@ -562,6 +562,19 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments { m_scene.SendKillObject(new List { so.RootPart.LocalId }); } + else if (so.HasPrivateAttachmentPoint) + { +// m_log.DebugFormat( +// "[ATTACHMENTS MODULE]: Killing private HUD {0} for avatars other than {1} at attachment point {2}", +// so.Name, sp.Name, so.AttachmentPoint); + + // Remove the client from everyone in the + m_scene.ForEachClient( + client => + { if (client.AgentId != so.AttachedAvatar) + client.SendKillObject(m_scene.RegionInfo.RegionHandle, new List() { so.LocalId }); + }); + } so.IsSelected = false; // fudge.... so.ScheduleGroupForFullUpdate();