Fix for rezzing and derezzing HUDs (see Mantis #5406). From now on updates are only sent to affected clients.
parent
2905288545
commit
c2586b0ea9
|
@ -1174,8 +1174,12 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
{
|
{
|
||||||
part.UpdateFlag = 0;
|
part.UpdateFlag = 0;
|
||||||
if (part == m_rootPart)
|
if (part == m_rootPart)
|
||||||
|
{
|
||||||
|
if (!IsAttachment || (AttachedAvatar == avatar.ControllingClient.AgentId) ||
|
||||||
|
(AttachmentPoint < 31) || (AttachmentPoint > 38))
|
||||||
avatar.ControllingClient.SendKillObject(m_regionHandle, part.LocalId);
|
avatar.ControllingClient.SendKillObject(m_regionHandle, part.LocalId);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2999,6 +2999,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
if (ParentGroup.IsDeleted)
|
if (ParentGroup.IsDeleted)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (ParentGroup.IsAttachment && (ParentGroup.AttachedAvatar != remoteClient.AgentId) &&
|
||||||
|
(ParentGroup.AttachmentPoint >= 31) && (ParentGroup.AttachmentPoint <= 38))
|
||||||
|
return;
|
||||||
|
|
||||||
clientFlags &= ~(uint) PrimFlags.CreateSelected;
|
clientFlags &= ~(uint) PrimFlags.CreateSelected;
|
||||||
|
|
||||||
if (remoteClient.AgentId == _ownerID)
|
if (remoteClient.AgentId == _ownerID)
|
||||||
|
@ -4786,7 +4790,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
if (ParentGroup.IsDeleted)
|
if (ParentGroup.IsDeleted)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (ParentGroup.IsAttachment && ParentGroup.RootPart != this)
|
if (ParentGroup.IsAttachment && ((ParentGroup.RootPart != this) ||
|
||||||
|
((ParentGroup.AttachedAvatar != remoteClient.AgentId) && (ParentGroup.AttachmentPoint >= 31) && (ParentGroup.AttachmentPoint <= 38))))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Causes this thread to dig into the Client Thread Data.
|
// Causes this thread to dig into the Client Thread Data.
|
||||||
|
|
Loading…
Reference in New Issue