diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 37 |
1 files changed, 4 insertions, 33 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index c14b39a..19144a7 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1490,51 +1490,22 @@ namespace OpenSim.Region.Framework.Scenes | |||
1490 | 1490 | ||
1491 | #endregion | 1491 | #endregion |
1492 | 1492 | ||
1493 | #region Client Updating | ||
1494 | |||
1495 | public void SendFullUpdateToClient(IClientAPI remoteClient) | 1493 | public void SendFullUpdateToClient(IClientAPI remoteClient) |
1496 | { | 1494 | { |
1497 | SendPartFullUpdate(remoteClient, RootPart, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, RootPart.UUID)); | 1495 | RootPart.SendFullUpdate( |
1496 | remoteClient, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, RootPart.UUID)); | ||
1498 | 1497 | ||
1499 | lock (m_parts) | 1498 | lock (m_parts) |
1500 | { | 1499 | { |
1501 | foreach (SceneObjectPart part in m_parts.Values) | 1500 | foreach (SceneObjectPart part in m_parts.Values) |
1502 | { | 1501 | { |
1503 | if (part != RootPart) | 1502 | if (part != RootPart) |
1504 | SendPartFullUpdate(remoteClient, part, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, part.UUID)); | 1503 | part.SendFullUpdate( |
1504 | remoteClient, m_scene.Permissions.GenerateClientFlags(remoteClient.AgentId, part.UUID)); | ||
1505 | } | 1505 | } |
1506 | } | 1506 | } |
1507 | } | 1507 | } |
1508 | 1508 | ||
1509 | /// <summary> | ||
1510 | /// Send a full update to the client for the given part | ||
1511 | /// </summary> | ||
1512 | /// <param name="remoteClient"></param> | ||
1513 | /// <param name="part"></param> | ||
1514 | internal void SendPartFullUpdate(IClientAPI remoteClient, SceneObjectPart part, uint clientFlags) | ||
1515 | { | ||
1516 | // m_log.DebugFormat( | ||
1517 | // "[SOG]: Sendinging part full update to {0} for {1} {2}", remoteClient.Name, part.Name, part.LocalId); | ||
1518 | |||
1519 | if (m_rootPart.UUID == part.UUID) | ||
1520 | { | ||
1521 | if (IsAttachment) | ||
1522 | { | ||
1523 | part.SendFullUpdateToClient(remoteClient, m_rootPart.AttachedPos, clientFlags); | ||
1524 | } | ||
1525 | else | ||
1526 | { | ||
1527 | part.SendFullUpdateToClient(remoteClient, AbsolutePosition, clientFlags); | ||
1528 | } | ||
1529 | } | ||
1530 | else | ||
1531 | { | ||
1532 | part.SendFullUpdateToClient(remoteClient, clientFlags); | ||
1533 | } | ||
1534 | } | ||
1535 | |||
1536 | #endregion | ||
1537 | |||
1538 | #region Copying | 1509 | #region Copying |
1539 | 1510 | ||
1540 | /// <summary> | 1511 | /// <summary> |