From ed80c7ae322cf77bbdf10fc1fa2c02da8d16ea68 Mon Sep 17 00:00:00 2001 From: MW Date: Mon, 11 Jun 2007 10:24:24 +0000 Subject: Added AttachObject method to IClientAPI. Added RequestAvatar(LLUUID avatarID) method to world. --- Common/OpenSim.Framework/Interfaces/IClientAPI.cs | 1 + OpenSim/OpenSim.Region/World/World.cs | 9 +++++++++ OpenSim/OpenSim.RegionServer/ClientView.API.cs | 20 ++++++++++++++++++++ OpenSim/OpenSim.RegionServer/ClientView.cs | 2 +- 4 files changed, 31 insertions(+), 1 deletion(-) diff --git a/Common/OpenSim.Framework/Interfaces/IClientAPI.cs b/Common/OpenSim.Framework/Interfaces/IClientAPI.cs index d3dc6d2..8a9b598 100644 --- a/Common/OpenSim.Framework/Interfaces/IClientAPI.cs +++ b/Common/OpenSim.Framework/Interfaces/IClientAPI.cs @@ -102,6 +102,7 @@ namespace OpenSim.Framework.Interfaces void InformClientOfNeighbour(ulong neighbourHandle, System.Net.IPAddress neighbourIP, ushort neighbourPort); AgentCircuitData RequestClientInfo(); + void AttachObject(uint localID, LLQuaternion rotation, byte attachPoint); void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimData primData, LLVector3 pos, LLUUID textureID); void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, LLQuaternion rotation); } diff --git a/OpenSim/OpenSim.Region/World/World.cs b/OpenSim/OpenSim.Region/World/World.cs index aad09b3..e316e27 100644 --- a/OpenSim/OpenSim.Region/World/World.cs +++ b/OpenSim/OpenSim.Region/World/World.cs @@ -591,6 +591,15 @@ namespace OpenSim.Region return result; } + + public Avatar RequestAvatar(LLUUID avatarID) + { + if (this.Avatars.ContainsKey(avatarID)) + { + return Avatars[avatarID]; + } + return null; + } #endregion #region ShutDown diff --git a/OpenSim/OpenSim.RegionServer/ClientView.API.cs b/OpenSim/OpenSim.RegionServer/ClientView.API.cs index fe46fcb..780035c 100644 --- a/OpenSim/OpenSim.RegionServer/ClientView.API.cs +++ b/OpenSim/OpenSim.RegionServer/ClientView.API.cs @@ -425,6 +425,26 @@ namespace OpenSim #region Primitive Packet/data Sending Methods /// + /// + /// + /// + /// + /// + public void AttachObject(uint localID, LLQuaternion rotation, byte attachPoint) + { + ObjectAttachPacket attach = new ObjectAttachPacket(); + attach.AgentData.AgentID = this.AgentID; + attach.AgentData.SessionID = this.SessionID; + attach.AgentData.AttachmentPoint = attachPoint; + attach.ObjectData = new ObjectAttachPacket.ObjectDataBlock[1]; + attach.ObjectData[0] = new ObjectAttachPacket.ObjectDataBlock(); + attach.ObjectData[0].ObjectLocalID = localID; + attach.ObjectData[0].Rotation = rotation; + + this.OutPacket(attach); + } + + /// /// Sends a full ObjectUpdatePacket to a client to inform it of a new primitive /// or big changes to a existing primitive. /// diff --git a/OpenSim/OpenSim.RegionServer/ClientView.cs b/OpenSim/OpenSim.RegionServer/ClientView.cs index 809d3cf..f9a7fe4 100644 --- a/OpenSim/OpenSim.RegionServer/ClientView.cs +++ b/OpenSim/OpenSim.RegionServer/ClientView.cs @@ -69,7 +69,7 @@ namespace OpenSim private AgentAssetUpload UploadAssets; private LLUUID newAssetFolder = LLUUID.Zero; - private bool debug = true; + private bool debug = false; protected IWorld m_world; private Dictionary m_clientThreads; private AssetCache m_assetCache; -- cgit v1.1