diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/ScenePresence.cs | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 7330bc5..e65ab7c 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -91,6 +91,12 @@ namespace OpenSim.Region.Environment.Scenes | |||
91 | return _physActor; | 91 | return _physActor; |
92 | } | 92 | } |
93 | } | 93 | } |
94 | |||
95 | public ulong RegionHandle | ||
96 | { | ||
97 | get { return m_regionHandle; } | ||
98 | } | ||
99 | |||
94 | #endregion | 100 | #endregion |
95 | 101 | ||
96 | #region Constructor(s) | 102 | #region Constructor(s) |
@@ -390,6 +396,16 @@ namespace OpenSim.Region.Environment.Scenes | |||
390 | remoteAvatar.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos, DefaultTexture); | 396 | remoteAvatar.ControllingClient.SendAvatarData(m_regionInfo.RegionHandle, this.firstname, this.lastname, this.uuid, this.LocalId, this.Pos, DefaultTexture); |
391 | } | 397 | } |
392 | 398 | ||
399 | public void SendFullUpdateToALLClients() | ||
400 | { | ||
401 | List<ScenePresence> avatars = this.m_world.RequestAvatarList(); | ||
402 | foreach (ScenePresence avatar in this.m_world.RequestAvatarList()) | ||
403 | { | ||
404 | this.SendFullUpdateToOtherClient(avatar); | ||
405 | avatar.SendFullUpdateToOtherClient(this); | ||
406 | } | ||
407 | } | ||
408 | |||
393 | /// <summary> | 409 | /// <summary> |
394 | /// | 410 | /// |
395 | /// </summary> | 411 | /// </summary> |
@@ -410,6 +426,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
410 | public void SendOurAppearance(IClientAPI OurClient) | 426 | public void SendOurAppearance(IClientAPI OurClient) |
411 | { | 427 | { |
412 | this.ControllingClient.SendWearables(this.Wearables); | 428 | this.ControllingClient.SendWearables(this.Wearables); |
429 | this.SendFullUpdateToALLClients(); | ||
413 | this.m_world.SendAllSceneObjectsToClient(this.ControllingClient); | 430 | this.m_world.SendAllSceneObjectsToClient(this.ControllingClient); |
414 | } | 431 | } |
415 | 432 | ||
@@ -429,13 +446,13 @@ namespace OpenSim.Region.Environment.Scenes | |||
429 | /// <param name="seq"></param> | 446 | /// <param name="seq"></param> |
430 | public void SendAnimPack(LLUUID animID, int seq) | 447 | public void SendAnimPack(LLUUID animID, int seq) |
431 | { | 448 | { |
432 | this.current_anim = animID; | 449 | this.current_anim = animID; |
433 | this.anim_seq = anim_seq; | 450 | this.anim_seq = seq; |
434 | List<ScenePresence> avatars = this.m_world.RequestAvatarList(); | 451 | List<ScenePresence> avatars = this.m_world.RequestAvatarList(); |
435 | for (int i = 0; i < avatars.Count; i++) | 452 | for (int i = 0; i < avatars.Count; i++) |
436 | { | 453 | { |
437 | avatars[i].ControllingClient.SendAnimation(animID, seq, this.ControllingClient.AgentId); | 454 | avatars[i].ControllingClient.SendAnimation(animID, seq, this.ControllingClient.AgentId); |
438 | } | 455 | } |
439 | } | 456 | } |
440 | 457 | ||
441 | /// <summary> | 458 | /// <summary> |