aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/Scene.cs
diff options
context:
space:
mode:
authorlbsa712007-09-21 06:00:34 +0000
committerlbsa712007-09-21 06:00:34 +0000
commit34043cd35143a25fb48412026b3a6ccb2c030255 (patch)
tree974eea2cab153dc6e3c8616292afa1a152aad38c /OpenSim/Region/Environment/Scenes/Scene.cs
parent* Yeah, I placed Close() in the wrong file. So sue me. (diff)
downloadopensim-SC-34043cd35143a25fb48412026b3a6ccb2c030255.zip
opensim-SC-34043cd35143a25fb48412026b3a6ccb2c030255.tar.gz
opensim-SC-34043cd35143a25fb48412026b3a6ccb2c030255.tar.bz2
opensim-SC-34043cd35143a25fb48412026b3a6ccb2c030255.tar.xz
* Slowly but surely working my way towards Regionality...
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs17
1 files changed, 14 insertions, 3 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index ab52ebf..adf501e 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -367,6 +367,10 @@ namespace OpenSim.Region.Environment.Scenes
367 updateLock.ReleaseMutex(); 367 updateLock.ReleaseMutex();
368 } 368 }
369 369
370 /// <summary>
371 /// Perform delegate action on all clients subscribing to updates from this region.
372 /// </summary>
373 /// <returns></returns>
370 internal void Broadcast(Action<IClientAPI> whatToDo) 374 internal void Broadcast(Action<IClientAPI> whatToDo)
371 { 375 {
372 m_region.Broadcast(whatToDo); 376 m_region.Broadcast(whatToDo);
@@ -775,7 +779,6 @@ namespace OpenSim.Region.Environment.Scenes
775 client.SendKillObject(avatar.RegionHandle, avatar.LocalId); 779 client.SendKillObject(avatar.RegionHandle, avatar.LocalId);
776 }); 780 });
777 781
778
779 ForEachScenePresence( 782 ForEachScenePresence(
780 delegate(ScenePresence presence) 783 delegate(ScenePresence presence)
781 { 784 {
@@ -898,12 +901,20 @@ namespace OpenSim.Region.Environment.Scenes
898 901
899 public void SendKillObject(uint localID) 902 public void SendKillObject(uint localID)
900 { 903 {
901 ForEachScenePresence(delegate(ScenePresence presence) 904 Broadcast(delegate(IClientAPI client)
902 { 905 {
903 presence.ControllingClient.SendKillObject(m_regionHandle, localID); 906 client.SendKillObject(m_regionHandle, localID);
904 }); 907 });
905 } 908 }
906 909
910 public void NotifyMyCoarseLocationChange()
911 {
912 ForEachScenePresence(delegate(ScenePresence presence)
913 {
914 presence.CoarseLocationChange();
915 });
916 }
917
907 public void SendAllSceneObjectsToClient(ScenePresence presence) 918 public void SendAllSceneObjectsToClient(ScenePresence presence)
908 { 919 {
909 foreach (EntityBase ent in Entities.Values) 920 foreach (EntityBase ent in Entities.Values)