diff options
Diffstat (limited to 'OpenSim/OpenSim.World/Estate/EstateManager.cs')
-rw-r--r-- | OpenSim/OpenSim.World/Estate/EstateManager.cs | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/OpenSim/OpenSim.World/Estate/EstateManager.cs b/OpenSim/OpenSim.World/Estate/EstateManager.cs index 85d9b0c..c94587a 100644 --- a/OpenSim/OpenSim.World/Estate/EstateManager.cs +++ b/OpenSim/OpenSim.World/Estate/EstateManager.cs | |||
@@ -217,18 +217,22 @@ namespace OpenSim.world.Estate | |||
217 | 217 | ||
218 | public void sendRegionInfoPacketToAll() | 218 | public void sendRegionInfoPacketToAll() |
219 | { | 219 | { |
220 | foreach (OpenSim.world.Avatar av in m_world.Avatars.Values) | 220 | List<Avatar> avatars = m_world.RequestAvatarList(); |
221 | { | 221 | |
222 | this.sendRegionInfoPacket(av.ControllingClient); | 222 | for (int i = 0; i < avatars.Count; i++) |
223 | } | 223 | { |
224 | this.sendRegionInfoPacket(avatars[i].ControllingClient); | ||
225 | } | ||
224 | } | 226 | } |
225 | 227 | ||
226 | public void sendRegionHandshakeToAll() | 228 | public void sendRegionHandshakeToAll() |
227 | { | 229 | { |
228 | foreach (OpenSim.world.Avatar av in m_world.Avatars.Values) | 230 | List<Avatar> avatars = m_world.RequestAvatarList(); |
231 | |||
232 | for (int i = 0; i < avatars.Count; i++) | ||
229 | { | 233 | { |
230 | av.SendRegionHandshake(); | 234 | this.sendRegionHandshake(avatars[i].ControllingClient); |
231 | } | 235 | } |
232 | } | 236 | } |
233 | 237 | ||
234 | public void sendRegionInfoPacket(IClientAPI remote_client) | 238 | public void sendRegionInfoPacket(IClientAPI remote_client) |
@@ -259,5 +263,10 @@ namespace OpenSim.world.Estate | |||
259 | remote_client.OutPacket(regionInfoPacket); | 263 | remote_client.OutPacket(regionInfoPacket); |
260 | } | 264 | } |
261 | 265 | ||
266 | public void sendRegionHandshake(IClientAPI remoteClient) | ||
267 | { | ||
268 | remoteClient.SendRegionHandshake(m_regInfo); | ||
269 | } | ||
270 | |||
262 | } | 271 | } |
263 | } | 272 | } |