aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie Thielker2008-10-06 08:19:18 +0000
committerMelanie Thielker2008-10-06 08:19:18 +0000
commitd834996bbef445565ac17a3e1eb4fe9c491cad5b (patch)
tree966f6f242b45749f40599e376bce5d8dc915a83b
parentExclude attachments from parcel prim counts (diff)
downloadopensim-SC_OLD-d834996bbef445565ac17a3e1eb4fe9c491cad5b.zip
opensim-SC_OLD-d834996bbef445565ac17a3e1eb4fe9c491cad5b.tar.gz
opensim-SC_OLD-d834996bbef445565ac17a3e1eb4fe9c491cad5b.tar.bz2
opensim-SC_OLD-d834996bbef445565ac17a3e1eb4fe9c491cad5b.tar.xz
Implement Parcel -> ForceOwnerToMe god mode packet
-rw-r--r--OpenSim/Framework/IClientAPI.cs2
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs11
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs15
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs1
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs1
5 files changed, 30 insertions, 0 deletions
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index dbaa0a8..1a6a5a4 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -167,6 +167,7 @@ namespace OpenSim.Framework
167 public delegate void ParcelObjectOwnerRequest(int local_id, IClientAPI remote_client); 167 public delegate void ParcelObjectOwnerRequest(int local_id, IClientAPI remote_client);
168 168
169 public delegate void ParcelAbandonRequest(int local_id, IClientAPI remote_client); 169 public delegate void ParcelAbandonRequest(int local_id, IClientAPI remote_client);
170 public delegate void ParcelGodForceOwner(int local_id, UUID ownerID, IClientAPI remote_client);
170 public delegate void ParcelReclaim(int local_id, IClientAPI remote_client); 171 public delegate void ParcelReclaim(int local_id, IClientAPI remote_client);
171 172
172 public delegate void ParcelReturnObjectsRequest(int local_id, uint return_type, UUID[] agent_ids, UUID[] selected_ids, IClientAPI remote_client); 173 public delegate void ParcelReturnObjectsRequest(int local_id, uint return_type, UUID[] agent_ids, UUID[] selected_ids, IClientAPI remote_client);
@@ -486,6 +487,7 @@ namespace OpenSim.Framework
486 event ParcelSelectObjects OnParcelSelectObjects; 487 event ParcelSelectObjects OnParcelSelectObjects;
487 event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest; 488 event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest;
488 event ParcelAbandonRequest OnParcelAbandonRequest; 489 event ParcelAbandonRequest OnParcelAbandonRequest;
490 event ParcelGodForceOwner OnParcelGodForceOwner;
489 event ParcelReclaim OnParcelReclaim; 491 event ParcelReclaim OnParcelReclaim;
490 event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest; 492 event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest;
491 event RegionInfoRequest OnRegionInfoRequest; 493 event RegionInfoRequest OnRegionInfoRequest;
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 102b9c4..ff35c32 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -211,6 +211,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
211 private ParcelSelectObjects handlerParcelSelectObjects = null; //OnParcelSelectObjects; 211 private ParcelSelectObjects handlerParcelSelectObjects = null; //OnParcelSelectObjects;
212 private ParcelObjectOwnerRequest handlerParcelObjectOwnerRequest = null; //OnParcelObjectOwnerRequest; 212 private ParcelObjectOwnerRequest handlerParcelObjectOwnerRequest = null; //OnParcelObjectOwnerRequest;
213 private ParcelAbandonRequest handlerParcelAbandonRequest = null; 213 private ParcelAbandonRequest handlerParcelAbandonRequest = null;
214 private ParcelGodForceOwner handlerParcelGodForceOwner = null;
214 private ParcelReclaim handlerParcelReclaim = null; 215 private ParcelReclaim handlerParcelReclaim = null;
215 private ParcelReturnObjectsRequest handlerParcelReturnObjectsRequest = null; 216 private ParcelReturnObjectsRequest handlerParcelReturnObjectsRequest = null;
216 private RegionInfoRequest handlerRegionInfoRequest = null; //OnRegionInfoRequest; 217 private RegionInfoRequest handlerRegionInfoRequest = null; //OnRegionInfoRequest;
@@ -938,6 +939,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
938 public event ParcelSelectObjects OnParcelSelectObjects; 939 public event ParcelSelectObjects OnParcelSelectObjects;
939 public event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest; 940 public event ParcelObjectOwnerRequest OnParcelObjectOwnerRequest;
940 public event ParcelAbandonRequest OnParcelAbandonRequest; 941 public event ParcelAbandonRequest OnParcelAbandonRequest;
942 public event ParcelGodForceOwner OnParcelGodForceOwner;
941 public event ParcelReclaim OnParcelReclaim; 943 public event ParcelReclaim OnParcelReclaim;
942 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest; 944 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest;
943 public event RegionInfoRequest OnRegionInfoRequest; 945 public event RegionInfoRequest OnRegionInfoRequest;
@@ -5678,6 +5680,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5678 handlerParcelObjectOwnerRequest(reqPacket.ParcelData.LocalID, this); 5680 handlerParcelObjectOwnerRequest(reqPacket.ParcelData.LocalID, this);
5679 } 5681 }
5680 break; 5682 break;
5683 case PacketType.ParcelGodForceOwner:
5684 ParcelGodForceOwnerPacket godForceOwnerPacket = (ParcelGodForceOwnerPacket)Pack;
5685
5686 handlerParcelGodForceOwner = OnParcelGodForceOwner;
5687 if (handlerParcelGodForceOwner != null)
5688 {
5689 handlerParcelGodForceOwner(godForceOwnerPacket.Data.LocalID, godForceOwnerPacket.Data.OwnerID, this);
5690 }
5691 break;
5681 case PacketType.ParcelRelease: 5692 case PacketType.ParcelRelease:
5682 ParcelReleasePacket releasePacket = (ParcelReleasePacket)Pack; 5693 ParcelReleasePacket releasePacket = (ParcelReleasePacket)Pack;
5683 5694
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
index 77a31c7..253eec6 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
@@ -103,6 +103,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
103 client.OnParcelAccessListRequest += new ParcelAccessListRequest(handleParcelAccessRequest); 103 client.OnParcelAccessListRequest += new ParcelAccessListRequest(handleParcelAccessRequest);
104 client.OnParcelAccessListUpdateRequest += new ParcelAccessListUpdateRequest(handleParcelAccessUpdateRequest); 104 client.OnParcelAccessListUpdateRequest += new ParcelAccessListUpdateRequest(handleParcelAccessUpdateRequest);
105 client.OnParcelAbandonRequest += new ParcelAbandonRequest(handleParcelAbandonRequest); 105 client.OnParcelAbandonRequest += new ParcelAbandonRequest(handleParcelAbandonRequest);
106 client.OnParcelGodForceOwner += new ParcelGodForceOwner(handleParcelGodForceOwner);
106 client.OnParcelReclaim += new ParcelReclaim(handleParcelReclaim); 107 client.OnParcelReclaim += new ParcelReclaim(handleParcelReclaim);
107 client.OnParcelInfoRequest += new ParcelInfoRequest(handleParcelInfo); 108 client.OnParcelInfoRequest += new ParcelInfoRequest(handleParcelInfo);
108 if (m_scene.Entities.ContainsKey(client.AgentId)) 109 if (m_scene.Entities.ContainsKey(client.AgentId))
@@ -912,6 +913,20 @@ namespace OpenSim.Region.Environment.Modules.World.Land
912 } 913 }
913 } 914 }
914 915
916 public void handleParcelGodForceOwner(int local_id, UUID ownerID, IClientAPI remote_client)
917 {
918 if (landList.ContainsKey(local_id))
919 {
920 if (m_scene.ExternalChecks.ExternalChecksCanBeGodLike(remote_client.AgentId))
921 {
922 landList[local_id].landData.OwnerID = ownerID;
923
924 m_scene.Broadcast(SendParcelOverlay);
925 landList[local_id].sendLandUpdateToClient(remote_client);
926 }
927 }
928 }
929
915 public void handleParcelAbandonRequest(int local_id, IClientAPI remote_client) 930 public void handleParcelAbandonRequest(int local_id, IClientAPI remote_client)
916 { 931 {
917 if (landList.ContainsKey(local_id)) 932 if (landList.ContainsKey(local_id))
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 972491d..a236ccd 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -258,6 +258,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
258 public event ParcelJoinRequest OnParcelJoinRequest; 258 public event ParcelJoinRequest OnParcelJoinRequest;
259 public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest; 259 public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest;
260 public event ParcelAbandonRequest OnParcelAbandonRequest; 260 public event ParcelAbandonRequest OnParcelAbandonRequest;
261 public event ParcelGodForceOwner OnParcelGodForceOwner;
261 public event ParcelReclaim OnParcelReclaim; 262 public event ParcelReclaim OnParcelReclaim;
262 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest; 263 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest;
263 public event ParcelAccessListRequest OnParcelAccessListRequest; 264 public event ParcelAccessListRequest OnParcelAccessListRequest;
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index b7ff879..9c8152d 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -153,6 +153,7 @@ namespace OpenSim.Region.Examples.SimpleModule
153 public event ParcelJoinRequest OnParcelJoinRequest; 153 public event ParcelJoinRequest OnParcelJoinRequest;
154 public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest; 154 public event ParcelPropertiesUpdateRequest OnParcelPropertiesUpdateRequest;
155 public event ParcelAbandonRequest OnParcelAbandonRequest; 155 public event ParcelAbandonRequest OnParcelAbandonRequest;
156 public event ParcelGodForceOwner OnParcelGodForceOwner;
156 public event ParcelReclaim OnParcelReclaim; 157 public event ParcelReclaim OnParcelReclaim;
157 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest; 158 public event ParcelReturnObjectsRequest OnParcelReturnObjectsRequest;
158 public event ParcelAccessListRequest OnParcelAccessListRequest; 159 public event ParcelAccessListRequest OnParcelAccessListRequest;