diff options
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 51 |
1 files changed, 48 insertions, 3 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 4ba441e..29ad966 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -219,6 +219,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
219 | public event BakeTerrain OnBakeTerrain; | 219 | public event BakeTerrain OnBakeTerrain; |
220 | public event RequestTerrain OnUploadTerrain; | 220 | public event RequestTerrain OnUploadTerrain; |
221 | public event EstateChangeInfo OnEstateChangeInfo; | 221 | public event EstateChangeInfo OnEstateChangeInfo; |
222 | public event EstateManageTelehub OnEstateManageTelehub; | ||
222 | public event EstateRestartSimRequest OnEstateRestartSimRequest; | 223 | public event EstateRestartSimRequest OnEstateRestartSimRequest; |
223 | public event EstateChangeCovenantRequest OnEstateChangeCovenantRequest; | 224 | public event EstateChangeCovenantRequest OnEstateChangeCovenantRequest; |
224 | public event UpdateEstateAccessDeltaRequest OnUpdateEstateAccessDeltaRequest; | 225 | public event UpdateEstateAccessDeltaRequest OnUpdateEstateAccessDeltaRequest; |
@@ -4482,6 +4483,23 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4482 | OutPacket(packet, ThrottleOutPacketType.Task); | 4483 | OutPacket(packet, ThrottleOutPacketType.Task); |
4483 | } | 4484 | } |
4484 | 4485 | ||
4486 | public void SendTelehubInfo(UUID ObjectID, string ObjectName, Vector3 ObjectPos, Quaternion ObjectRot, List<Vector3> SpawnPoint) | ||
4487 | { | ||
4488 | TelehubInfoPacket packet = (TelehubInfoPacket)PacketPool.Instance.GetPacket(PacketType.TelehubInfo); | ||
4489 | packet.TelehubBlock.ObjectID = ObjectID; | ||
4490 | packet.TelehubBlock.ObjectName = Utils.StringToBytes(ObjectName); | ||
4491 | packet.TelehubBlock.TelehubPos = ObjectPos; | ||
4492 | packet.TelehubBlock.TelehubRot = ObjectRot; | ||
4493 | |||
4494 | packet.SpawnPointBlock = new TelehubInfoPacket.SpawnPointBlockBlock[SpawnPoint.Count]; | ||
4495 | for (int n = 0; n < SpawnPoint.Count; n++) | ||
4496 | { | ||
4497 | packet.SpawnPointBlock[n] = new TelehubInfoPacket.SpawnPointBlockBlock{SpawnPointPos = SpawnPoint[n]}; | ||
4498 | } | ||
4499 | |||
4500 | OutPacket(packet, ThrottleOutPacketType.Task); | ||
4501 | } | ||
4502 | |||
4485 | #endregion | 4503 | #endregion |
4486 | 4504 | ||
4487 | #region Land Data Sending Methods | 4505 | #region Land Data Sending Methods |
@@ -8920,7 +8938,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8920 | private bool HandleEstateOwnerMessage(IClientAPI sender, Packet Pack) | 8938 | private bool HandleEstateOwnerMessage(IClientAPI sender, Packet Pack) |
8921 | { | 8939 | { |
8922 | EstateOwnerMessagePacket messagePacket = (EstateOwnerMessagePacket)Pack; | 8940 | EstateOwnerMessagePacket messagePacket = (EstateOwnerMessagePacket)Pack; |
8923 | //m_log.Debug(messagePacket.ToString()); | 8941 | // m_log.InfoFormat("[LLCLIENTVIEW]: Packet: {0}", Utils.BytesToString(messagePacket.MethodData.Method)); |
8924 | GodLandStatRequest handlerLandStatRequest; | 8942 | GodLandStatRequest handlerLandStatRequest; |
8925 | 8943 | ||
8926 | #region Packet Session and User Check | 8944 | #region Packet Session and User Check |
@@ -9219,6 +9237,35 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
9219 | } | 9237 | } |
9220 | return true; | 9238 | return true; |
9221 | 9239 | ||
9240 | case "telehub": | ||
9241 | if (((Scene)m_scene).Permissions.CanIssueEstateCommand(AgentId, false)) | ||
9242 | { | ||
9243 | UUID invoice = messagePacket.MethodData.Invoice; | ||
9244 | UUID SenderID = messagePacket.AgentData.AgentID; | ||
9245 | UInt32 param1 = 0u; | ||
9246 | |||
9247 | string command = (string)Utils.BytesToString(messagePacket.ParamList[0].Parameter); | ||
9248 | |||
9249 | if (command != "info ui") | ||
9250 | { | ||
9251 | try | ||
9252 | { | ||
9253 | param1 = Convert.ToUInt32(Utils.BytesToString(messagePacket.ParamList[1].Parameter)); | ||
9254 | } | ||
9255 | catch (Exception ex) | ||
9256 | { | ||
9257 | |||
9258 | } | ||
9259 | } | ||
9260 | |||
9261 | EstateManageTelehub handlerEstateManageTelehub = OnEstateManageTelehub; | ||
9262 | if (handlerEstateManageTelehub != null) | ||
9263 | { | ||
9264 | handlerEstateManageTelehub(this, invoice, SenderID, command, param1); | ||
9265 | } | ||
9266 | } | ||
9267 | return true; | ||
9268 | |||
9222 | default: | 9269 | default: |
9223 | m_log.Error("EstateOwnerMessage: Unknown method requested\n" + messagePacket); | 9270 | m_log.Error("EstateOwnerMessage: Unknown method requested\n" + messagePacket); |
9224 | return true; | 9271 | return true; |
@@ -9230,8 +9277,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
9230 | //lsrp.RequestData.ReportType; // 1 = colliders, 0 = scripts | 9277 | //lsrp.RequestData.ReportType; // 1 = colliders, 0 = scripts |
9231 | //lsrp.RequestData.RequestFlags; | 9278 | //lsrp.RequestData.RequestFlags; |
9232 | //lsrp.RequestData.Filter; | 9279 | //lsrp.RequestData.Filter; |
9233 | |||
9234 | // return true; | ||
9235 | } | 9280 | } |
9236 | 9281 | ||
9237 | private bool HandleRequestRegionInfo(IClientAPI sender, Packet Pack) | 9282 | private bool HandleRequestRegionInfo(IClientAPI sender, Packet Pack) |