From 3c3ea196201b56407ccf6c21229064f7954c716d Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Thu, 14 Jun 2012 02:26:38 +0100 Subject: 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. --- .../CoreModules/Avatar/Attachments/AttachmentsModule.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs') diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index 88071f6..d47b1ab 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(); -- cgit v1.1