From 2953bee1f4443e041dbce38d042f6ed421d30533 Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 4 Feb 2010 17:11:06 +0000 Subject: [PATCH] Revert "change position of OnAttach event firing so that this also happens when a user teleports into a region" The behavior introduced here is not compatible with SL This reverts commit b6bee4999c9d238a052022f105069ea4eb85f8f4. --- OpenSim/Region/Framework/Scenes/Scene.cs | 29 +++++++++---------- OpenSim/Region/Framework/Scenes/SceneGraph.cs | 3 +- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index ff2be05455..73b0b3e2e9 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs @@ -2496,24 +2496,20 @@ namespace OpenSim.Region.Framework.Scenes //RootPrim.SetParentLocalId(parentLocalID); - m_log.DebugFormat( - "[ATTACHMENT]: Received attachment {0}, inworld asset id {1}", - //grp.RootPart.LastOwnerID.ToString(), - grp.GetFromItemID(), - grp.UUID.ToString()); + m_log.DebugFormat("[ATTACHMENT]: Received " + + "attachment {0}, inworld asset id {1}", + //grp.RootPart.LastOwnerID.ToString(), + grp.GetFromItemID(), + grp.UUID.ToString()); //grp.SetFromAssetID(grp.RootPart.LastOwnerID); - m_log.DebugFormat( - "[ATTACHMENT]: Attach to avatar {0} at position {1}", sp.UUID.ToString(), grp.AbsolutePosition); - - if ( - AttachObject( - sp.ControllingClient, grp.LocalId, (uint)0, grp.GroupRotation, grp.AbsolutePosition, false)) - { - // Do this last so that event listeners have access to all the effects of the attachment - EventManager.TriggerOnAttach(grp.LocalId, UUID.Zero, sp.UUID); - } - + m_log.DebugFormat("[ATTACHMENT]: Attach " + + "to avatar {0} at position {1}", + sp.UUID.ToString(), grp.AbsolutePosition); + AttachObject(sp.ControllingClient, + grp.LocalId, (uint)0, + grp.GroupRotation, + grp.AbsolutePosition, false); RootPrim.RemFlag(PrimFlags.TemporaryOnRez); grp.SendGroupFullUpdate(); } @@ -2522,6 +2518,7 @@ namespace OpenSim.Region.Framework.Scenes RootPrim.RemFlag(PrimFlags.TemporaryOnRez); RootPrim.AddFlag(PrimFlags.TemporaryOnRez); } + } else { diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index b508af5f7f..1ac061a1b2 100644 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs @@ -627,10 +627,11 @@ namespace OpenSim.Region.Framework.Scenes } m_parentScene.AttachObject(remoteClient, AttachmentPt, itemId, group); + group.AttachToAgent(remoteClient.AgentId, AttachmentPt, attachPos, silent); - // In case it is later dropped again, don't let // it get cleaned up + // group.RootPart.RemFlag(PrimFlags.TemporaryOnRez); group.HasGroupChanged = false; }