diff --git a/src/Appearance2Avatar.cs b/src/Appearance2Avatar.cs index dbc76e8..bd19671 100644 --- a/src/Appearance2Avatar.cs +++ b/src/Appearance2Avatar.cs @@ -94,15 +94,21 @@ namespace OpenSim.Modules.Appearance2Avatar if(noteCardContend != null) { - sp.ClearAttachments(); + //Remove all attachments + List _allAttachments = sp.GetAttachments(); + foreach (SceneObjectGroup _attachment in _allAttachments) + sp.RemoveAttachment(_attachment); + //Load Appearance m_log.Info(noteCardContend); m_log.Info("[" + Name + "] Info: Deserialize notecard."); OSDMap appearanceOsd = (OSDMap)OSDParser.DeserializeLLSDXml(noteCardContend); sp.Appearance.Unpack(appearanceOsd); - m_log.Info("[" + Name + "] Info: Send update to all clients"); + List _allNewAttachments = sp.GetAttachments(); + foreach (SceneObjectGroup _attachment in _allAttachments) + sp.SendAttachmentUpdate(_attachment, PrimUpdateFlags.FullUpdate); sp.SendInitialAvatarDataToAgent(sp); sp.SendAvatarDataToAllAgents();