aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs9
-rw-r--r--OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs23
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs1
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs1
4 files changed, 34 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index c8923e0..72d2a76 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -965,6 +965,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
965 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest; 965 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest;
966 public event EstateDebugRegionRequest OnEstateDebugRegionRequest; 966 public event EstateDebugRegionRequest OnEstateDebugRegionRequest;
967 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest; 967 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest;
968 public event EstateTeleportAllUsersHomeRequest OnEstateTeleportAllUsersHomeRequest;
968 public event RegionHandleRequest OnRegionHandleRequest; 969 public event RegionHandleRequest OnRegionHandleRequest;
969 public event ParcelInfoRequest OnParcelInfoRequest; 970 public event ParcelInfoRequest OnParcelInfoRequest;
970 public event ScriptReset OnScriptReset; 971 public event ScriptReset OnScriptReset;
@@ -5877,6 +5878,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5877 OnEstateTeleportOneUserHomeRequest(this, invoice, SenderID, Prey); 5878 OnEstateTeleportOneUserHomeRequest(this, invoice, SenderID, Prey);
5878 } 5879 }
5879 break; 5880 break;
5881 case "teleporthomeallusers":
5882 if (((Scene)m_scene).ExternalChecks.ExternalChecksCanIssueEstateCommand(this.AgentId, false))
5883 {
5884 UUID invoice = messagePacket.MethodData.Invoice;
5885 UUID SenderID = messagePacket.AgentData.AgentID;
5886 OnEstateTeleportAllUsersHomeRequest(this, invoice, SenderID);
5887 }
5888 break;
5880 case "colliders": 5889 case "colliders":
5881 handlerLandStatRequest = OnLandStatRequest; 5890 handlerLandStatRequest = OnLandStatRequest;
5882 if (handlerLandStatRequest != null) 5891 if (handlerLandStatRequest != null)
diff --git a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
index 3dddc2b..616132b 100644
--- a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
@@ -383,6 +383,28 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
383 } 383 }
384 } 384 }
385 385
386 private void handleEstateTeleportAllUsersHomeRequest(IClientAPI remover_client, UUID invoice, UUID senderID)
387 {
388 // Get a fresh list that will not change as people get teleported away
389 List<ScenePresence> prescences = m_scene.GetScenePresences();
390 foreach (ScenePresence p in prescences)
391 {
392 if (p.UUID != senderID)
393 {
394 // make sure they are still there, we could be working down a long list
395 ScenePresence s = m_scene.GetScenePresence(p.UUID);
396 if (s != null)
397 {
398 // Also make sure they are actually in the region
399 if (!s.IsChildAgent)
400 {
401 m_scene.TeleportClientHome(s.UUID, s.ControllingClient);
402 }
403 }
404 }
405 }
406 }
407
386 private void HandleRegionInfoRequest(IClientAPI remote_client) 408 private void HandleRegionInfoRequest(IClientAPI remote_client)
387 { 409 {
388 410
@@ -723,6 +745,7 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
723 client.OnEstateBlueBoxMessageRequest += SendEstateBlueBoxMessage; 745 client.OnEstateBlueBoxMessageRequest += SendEstateBlueBoxMessage;
724 client.OnEstateDebugRegionRequest += handleEstateDebugRegionRequest; 746 client.OnEstateDebugRegionRequest += handleEstateDebugRegionRequest;
725 client.OnEstateTeleportOneUserHomeRequest += handleEstateTeleportOneUserHomeRequest; 747 client.OnEstateTeleportOneUserHomeRequest += handleEstateTeleportOneUserHomeRequest;
748 client.OnEstateTeleportAllUsersHomeRequest += handleEstateTeleportAllUsersHomeRequest;
726 749
727 client.OnRegionInfoRequest += HandleRegionInfoRequest; 750 client.OnRegionInfoRequest += HandleRegionInfoRequest;
728 client.OnEstateCovenantRequest += HandleEstateCovenantRequest; 751 client.OnEstateCovenantRequest += HandleEstateCovenantRequest;
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 8c76884..9476571 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -305,6 +305,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
305 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest; 305 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest;
306 public event EstateDebugRegionRequest OnEstateDebugRegionRequest; 306 public event EstateDebugRegionRequest OnEstateDebugRegionRequest;
307 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest; 307 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest;
308 public event EstateTeleportAllUsersHomeRequest OnEstateTeleportAllUsersHomeRequest;
308 public event EstateChangeInfo OnEstateChangeInfo; 309 public event EstateChangeInfo OnEstateChangeInfo;
309 public event ScriptReset OnScriptReset; 310 public event ScriptReset OnScriptReset;
310 public event GetScriptRunning OnGetScriptRunning; 311 public event GetScriptRunning OnGetScriptRunning;
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index 92a96f9..1967318 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -201,6 +201,7 @@ namespace OpenSim.Region.Examples.SimpleModule
201 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest; 201 public event EstateBlueBoxMessageRequest OnEstateBlueBoxMessageRequest;
202 public event EstateDebugRegionRequest OnEstateDebugRegionRequest; 202 public event EstateDebugRegionRequest OnEstateDebugRegionRequest;
203 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest; 203 public event EstateTeleportOneUserHomeRequest OnEstateTeleportOneUserHomeRequest;
204 public event EstateTeleportAllUsersHomeRequest OnEstateTeleportAllUsersHomeRequest;
204 public event ScriptReset OnScriptReset; 205 public event ScriptReset OnScriptReset;
205 public event GetScriptRunning OnGetScriptRunning; 206 public event GetScriptRunning OnGetScriptRunning;
206 public event SetScriptRunning OnSetScriptRunning; 207 public event SetScriptRunning OnSetScriptRunning;