aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie2011-11-06 20:00:47 +0000
committerMelanie2011-11-06 20:00:47 +0000
commitfa992a020ca9b476a992534c714e46385b74b44d (patch)
tree5ddf3d3c2ad303ff9b82c892b3fdfd1cc9c5543e /OpenSim/Region
parentAllow HG and other scene presences not linked to a user account to function. (diff)
parentHUD attachments: Removes some more messages sent to wrong clients. (diff)
downloadopensim-SC_OLD-fa992a020ca9b476a992534c714e46385b74b44d.zip
opensim-SC_OLD-fa992a020ca9b476a992534c714e46385b74b44d.tar.gz
opensim-SC_OLD-fa992a020ca9b476a992534c714e46385b74b44d.tar.bz2
opensim-SC_OLD-fa992a020ca9b476a992534c714e46385b74b44d.tar.xz
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs11
1 files changed, 10 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 1e111e5..5465ca4 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3164,16 +3164,25 @@ namespace OpenSim.Region.Framework.Scenes
3164 public void SendKillObject(uint localID) 3164 public void SendKillObject(uint localID)
3165 { 3165 {
3166 SceneObjectPart part = GetSceneObjectPart(localID); 3166 SceneObjectPart part = GetSceneObjectPart(localID);
3167 UUID attachedAvatar = UUID.Zero;
3168
3167 if (part != null) // It is a prim 3169 if (part != null) // It is a prim
3168 { 3170 {
3169 if (!part.ParentGroup.IsDeleted) // Valid 3171 if (!part.ParentGroup.IsDeleted) // Valid
3170 { 3172 {
3171 if (part.ParentGroup.RootPart != part) // Child part 3173 if (part.ParentGroup.RootPart != part) // Child part
3172 return; 3174 return;
3175
3176 if (part.ParentGroup.IsAttachment && part.ParentGroup.AttachmentPoint >= 31 && part.ParentGroup.AttachmentPoint <= 38)
3177 attachedAvatar = part.ParentGroup.AttachedAvatar;
3173 } 3178 }
3174 } 3179 }
3175 3180
3176 ForEachClient(delegate(IClientAPI client) { client.SendKillObject(m_regionHandle, localID); }); 3181 ForEachClient(delegate(IClientAPI client)
3182 {
3183 if (attachedAvatar == UUID.Zero || attachedAvatar == client.AgentId)
3184 client.SendKillObject(m_regionHandle, localID);
3185 });
3177 } 3186 }
3178 3187
3179 #endregion 3188 #endregion