Ejemplo n.º 1
0
        public void RequestObject(Simulator simulator, uint localID)
        {
            RequestMultipleObjectsPacket request = new RequestMultipleObjectsPacket();

            request.AgentData.AgentID           = Client.Network.AgentID;
            request.AgentData.SessionID         = Client.Network.SessionID;
            request.ObjectData                  = new RequestMultipleObjectsPacket.ObjectDataBlock[1];
            request.ObjectData[0]               = new RequestMultipleObjectsPacket.ObjectDataBlock();
            request.ObjectData[0].ID            = localID;
            request.ObjectData[0].CacheMissType = 0;

            Client.Network.SendPacket(request, simulator);
        }
Ejemplo n.º 2
0
        private void RequestObjects(byte[] objects)
        {
            RequestMultipleObjectsPacket packet = new RequestMultipleObjectsPacket();

            packet.AgentData.AgentID = frame.AgentID;
            RequestMultipleObjectsPacket.ObjectDataBlock[] temp = new RequestMultipleObjectsPacket.ObjectDataBlock[4];
            for (int i = 0; i < objects.Length; i++)
            {
                temp[i]               = new RequestMultipleObjectsPacket.ObjectDataBlock();
                temp[i].ID            = objects[i];
                temp[i].CacheMissType = (byte)1;
            }
            packet.ObjectData = temp;
        }
Ejemplo n.º 3
0
        public void RequestObjects(Simulator simulator, List <uint> localIDs)
        {
            int i = 0;

            RequestMultipleObjectsPacket request = new RequestMultipleObjectsPacket();

            request.AgentData.AgentID   = Client.Network.AgentID;
            request.AgentData.SessionID = Client.Network.SessionID;
            request.ObjectData          = new RequestMultipleObjectsPacket.ObjectDataBlock[localIDs.Count];

            foreach (uint localID in localIDs)
            {
                request.ObjectData[i]               = new RequestMultipleObjectsPacket.ObjectDataBlock();
                request.ObjectData[i].ID            = localID;
                request.ObjectData[i].CacheMissType = 0;

                i++;
            }

            Client.Network.SendPacket(request, simulator);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Request information for multiple objects contained in
        /// the same simulator
        /// </summary>
        /// <param name="simulator">The <see cref="Simulator"/> the objects are located</param>
        /// <param name="localIDs">An array containing the Local IDs of the objects</param>
        public void RequestObjects(Simulator simulator, List<uint> localIDs)
        {
            RequestMultipleObjectsPacket request = new RequestMultipleObjectsPacket();
            request.AgentData.AgentID = Client.Self.AgentID;
            request.AgentData.SessionID = Client.Self.SessionID;
            request.ObjectData = new RequestMultipleObjectsPacket.ObjectDataBlock[localIDs.Count];

            for (int i = 0; i < localIDs.Count; i++)
            {
                request.ObjectData[i] = new RequestMultipleObjectsPacket.ObjectDataBlock();
                request.ObjectData[i].ID = localIDs[i];
                request.ObjectData[i].CacheMissType = 0;
            }

            Client.Network.SendPacket(request, simulator);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Request information for a single object from a <see cref="Simulator"/> 
        /// you are currently connected to
        /// </summary>
        /// <param name="simulator">The <see cref="Simulator"/> the object is located</param>
        /// <param name="localID">The Local ID of the object</param>
        public void RequestObject(Simulator simulator, uint localID)
        {
            RequestMultipleObjectsPacket request = new RequestMultipleObjectsPacket();
            request.AgentData.AgentID = Client.Self.AgentID;
            request.AgentData.SessionID = Client.Self.SessionID;
            request.ObjectData = new RequestMultipleObjectsPacket.ObjectDataBlock[1];
            request.ObjectData[0] = new RequestMultipleObjectsPacket.ObjectDataBlock();
            request.ObjectData[0].ID = localID;
            request.ObjectData[0].CacheMissType = 0;

            Client.Network.SendPacket(request, simulator);
        }
Ejemplo n.º 6
0
 private void RequestObjects(byte[] objects)
 {
     RequestMultipleObjectsPacket packet = new RequestMultipleObjectsPacket();
     packet.AgentData.AgentID = frame.AgentID;
     RequestMultipleObjectsPacket.ObjectDataBlock[] temp = new RequestMultipleObjectsPacket.ObjectDataBlock[4];
     for (int i = 0; i < objects.Length; i++)
     {
         temp[i] = new RequestMultipleObjectsPacket.ObjectDataBlock();
         temp[i].ID = objects[i];
         temp[i].CacheMissType = (byte)1;
     }
     packet.ObjectData = temp;
 }
Ejemplo n.º 7
0
        /// <summary>
        /// Request object information for multiple objects all contained in
        /// the same sim, primarily used for stale or missing cache entries
        /// </summary>
        /// <param name="simulator">A reference to the <seealso cref="OpenMetaverse.Simulator"/> object where the objects reside</param>
        /// <param name="localIDs">An array which contains the IDs of the objects to request</param>
        public void RequestObjects(Simulator simulator, List<uint> localIDs)
        {
            int i = 0;

            RequestMultipleObjectsPacket request = new RequestMultipleObjectsPacket();
            request.AgentData.AgentID = Network.AgentID;
            request.AgentData.SessionID = Network.SessionID;
            request.ObjectData = new RequestMultipleObjectsPacket.ObjectDataBlock[localIDs.Count];

            foreach (uint localID in localIDs)
            {
                request.ObjectData[i] = new RequestMultipleObjectsPacket.ObjectDataBlock();
                request.ObjectData[i].ID = localID;
                request.ObjectData[i].CacheMissType = 0;

                i++;
            }

            Network.SendPacket(request, simulator);
        }