aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 9bef65f..484518a 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -250,6 +250,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
250 250
251 private ForceReleaseControls handlerForceReleaseControls = null; 251 private ForceReleaseControls handlerForceReleaseControls = null;
252 252
253 private GodLandStatRequest handlerLandStatRequest = null;
254
253 private UUIDNameRequest handlerUUIDGroupNameRequest = null; 255 private UUIDNameRequest handlerUUIDGroupNameRequest = null;
254 256
255 private RequestObjectPropertiesFamily handlerObjectGroupRequest = null; 257 private RequestObjectPropertiesFamily handlerObjectGroupRequest = null;
@@ -842,6 +844,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
842 844
843 public event ForceReleaseControls OnForceReleaseControls; 845 public event ForceReleaseControls OnForceReleaseControls;
844 846
847 public event GodLandStatRequest OnLandStatRequest;
848
845 public event RequestObjectPropertiesFamily OnObjectGroupRequest; 849 public event RequestObjectPropertiesFamily OnObjectGroupRequest;
846 850
847 public event DetailedEstateDataRequest OnDetailedEstateDataRequest; 851 public event DetailedEstateDataRequest OnDetailedEstateDataRequest;
@@ -5641,11 +5645,35 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5641 OnEstateTeleportOneUserHomeRequest(this,invoice,SenderID,Prey); 5645 OnEstateTeleportOneUserHomeRequest(this,invoice,SenderID,Prey);
5642 } 5646 }
5643 break; 5647 break;
5648 case "colliders":
5649 handlerLandStatRequest = OnLandStatRequest;
5650 if (handlerLandStatRequest != null)
5651 {
5652 handlerLandStatRequest(0, 1, 0, "", this);
5653 }
5654 break;
5644 default: 5655 default:
5645 m_log.Error("EstateOwnerMessage: Unknown method requested\n" + messagePacket.ToString()); 5656 m_log.Error("EstateOwnerMessage: Unknown method requested\n" + messagePacket.ToString());
5646 break; 5657 break;
5647 } 5658 }
5648 break; 5659 break;
5660 case PacketType.LandStatRequest:
5661 LandStatRequestPacket lsrp = (LandStatRequestPacket)Pack;
5662
5663 handlerLandStatRequest = OnLandStatRequest;
5664 if (handlerLandStatRequest != null)
5665 {
5666 handlerLandStatRequest(lsrp.RequestData.ParcelLocalID,lsrp.RequestData.ReportType,lsrp.RequestData.RequestFlags,Helpers.FieldToUTF8String(lsrp.RequestData.Filter),this);
5667 }
5668 //int parcelID, uint reportType, uint requestflags, string filter
5669
5670 //lsrp.RequestData.ParcelLocalID;
5671 //lsrp.RequestData.ReportType; // 1 = colliders, 0 = scripts
5672 //lsrp.RequestData.RequestFlags;
5673 //lsrp.RequestData.Filter;
5674
5675 break;
5676
5649 case PacketType.RequestRegionInfo: 5677 case PacketType.RequestRegionInfo:
5650 RequestRegionInfoPacket.AgentDataBlock mPacket = ((RequestRegionInfoPacket)Pack).AgentData; 5678 RequestRegionInfoPacket.AgentDataBlock mPacket = ((RequestRegionInfoPacket)Pack).AgentData;
5651 5679
@@ -5982,6 +6010,34 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5982 pack.UUIDNameBlock = uidnameblock; 6010 pack.UUIDNameBlock = uidnameblock;
5983 OutPacket(pack, ThrottleOutPacketType.Task); 6011 OutPacket(pack, ThrottleOutPacketType.Task);
5984 } 6012 }
6013
6014 public void SendLandStatReply(uint reportType, uint requestFlags, uint resultCount, LandStatReportItem[] lsrpia)
6015 {
6016 LandStatReplyPacket lsrp = new LandStatReplyPacket();
6017 LandStatReplyPacket.RequestDataBlock lsreqdpb = new LandStatReplyPacket.RequestDataBlock();
6018 LandStatReplyPacket.ReportDataBlock[] lsrepdba = new LandStatReplyPacket.ReportDataBlock[lsrpia.Length];
6019 //LandStatReplyPacket.ReportDataBlock lsrepdb = new LandStatReplyPacket.ReportDataBlock();
6020 // lsrepdb.
6021 lsrp.RequestData.ReportType = reportType;
6022 lsrp.RequestData.RequestFlags = requestFlags;
6023 lsrp.RequestData.TotalObjectCount = resultCount;
6024 for (int i = 0; i < lsrpia.Length; i++)
6025 {
6026 LandStatReplyPacket.ReportDataBlock lsrepdb = new LandStatReplyPacket.ReportDataBlock();
6027 lsrepdb.LocationX = lsrpia[i].LocationX;
6028 lsrepdb.LocationY = lsrpia[i].LocationY;
6029 lsrepdb.LocationZ = lsrpia[i].LocationZ;
6030 lsrepdb.Score = lsrpia[i].Score;
6031 lsrepdb.TaskID = lsrpia[i].TaskID;
6032 lsrepdb.TaskLocalID = lsrpia[i].TaskLocalID;
6033 lsrepdb.TaskName = Helpers.StringToField(lsrpia[i].TaskName);
6034 lsrepdb.OwnerName = Helpers.StringToField(lsrpia[i].OwnerName);
6035 lsrepdba[i] = lsrepdb;
6036 }
6037 lsrp.ReportData = lsrepdba;
6038 OutPacket(lsrp, ThrottleOutPacketType.Task);
6039 }
6040
5985 public ClientInfo GetClientInfo() 6041 public ClientInfo GetClientInfo()
5986 { 6042 {
5987 //MainLog.Instance.Verbose("CLIENT", "GetClientInfo BGN"); 6043 //MainLog.Instance.Verbose("CLIENT", "GetClientInfo BGN");