private void PlacesReplyHandler(Packet packet, Simulator simulator) { if (OnPlacesReply != null) { PlacesReplyPacket placesReply = packet as PlacesReplyPacket; List <PlacesSearchData> places = new List <PlacesSearchData>(); foreach (PlacesReplyPacket.QueryDataBlock block in placesReply.QueryData) { PlacesSearchData place = new PlacesSearchData(); place.OwnerID = block.OwnerID; place.Name = Helpers.FieldToUTF8String(block.Name); place.Desc = Helpers.FieldToUTF8String(block.Desc); place.ActualArea = block.ActualArea; place.BillableArea = block.BillableArea; place.Flags = block.Flags; place.GlobalX = block.GlobalX; place.GlobalY = block.GlobalY; place.GlobalZ = block.GlobalZ; place.SimName = Helpers.FieldToUTF8String(block.SimName); place.SnapshotID = block.SnapshotID; place.Dwell = block.Dwell; place.Price = block.Price; places.Add(place); } try { OnPlacesReply(placesReply.TransactionData.TransactionID, places); } catch (Exception e) { Logger.Log(e.Message, Helpers.LogLevel.Error, Client, e); } } }
/// <summary>Process an incoming packet and raise the appropriate events</summary> /// <param name="sender">The sender</param> /// <param name="e">The EventArgs object containing the packet data</param> protected void PlacesReplyHandler(object sender, PacketReceivedEventArgs e) { if (m_Places != null) { Packet packet = e.Packet; PlacesReplyPacket placesReply = packet as PlacesReplyPacket; List<PlacesSearchData> places = new List<PlacesSearchData>(); foreach (PlacesReplyPacket.QueryDataBlock block in placesReply.QueryData) { PlacesSearchData place = new PlacesSearchData(); place.OwnerID = block.OwnerID; place.Name = Utils.BytesToString(block.Name); place.Desc = Utils.BytesToString(block.Desc); place.ActualArea = block.ActualArea; place.BillableArea = block.BillableArea; place.Flags = (PlacesFlags)block.Flags; place.GlobalX = block.GlobalX; place.GlobalY = block.GlobalY; place.GlobalZ = block.GlobalZ; place.SimName = Utils.BytesToString(block.SimName); place.SnapshotID = block.SnapshotID; place.Dwell = block.Dwell; place.Price = block.Price; places.Add(place); } OnPlaces(new PlacesReplyEventArgs(placesReply.TransactionData.TransactionID, places)); } }
private void PlacesReplyHandler(Packet packet, Simulator simulator) { if (OnPlacesReply != null) { PlacesReplyPacket placesReply = packet as PlacesReplyPacket; List<PlacesSearchData> places = new List<PlacesSearchData>(); foreach (PlacesReplyPacket.QueryDataBlock block in placesReply.QueryData) { PlacesSearchData place = new PlacesSearchData(); place.OwnerID = block.OwnerID; place.Name = Helpers.FieldToUTF8String(block.Name); place.Desc = Helpers.FieldToUTF8String(block.Desc); place.ActualArea = block.ActualArea; place.BillableArea = block.BillableArea; place.Flags = block.Flags; place.GlobalX = block.GlobalX; place.GlobalY = block.GlobalY; place.GlobalZ = block.GlobalZ; place.SimName = Helpers.FieldToUTF8String(block.SimName); place.SnapshotID = block.SnapshotID; place.Dwell = block.Dwell; place.Price = block.Price; places.Add(place); } try { OnPlacesReply(placesReply.TransactionData.TransactionID, places); } catch (Exception e) { Client.Log(e.ToString(), Helpers.LogLevel.Error); } } }
/// <summary>Process an incoming <see cref="PlacesReplyMessage"/> event message</summary> /// <param name="capsKey">The Unique Capabilities Key</param> /// <param name="message">The <see cref="PlacesReplyMessage"/> event message containing the data</param> /// <param name="simulator">The simulator the message originated from</param> protected void PlacesReplyEventHandler(string capsKey, IMessage message, Simulator simulator) { if (m_Places != null) { PlacesReplyMessage replyMessage = (PlacesReplyMessage)message; List<PlacesSearchData> places = new List<PlacesSearchData>(); for (int i = 0; i < replyMessage.QueryDataBlocks.Length; i++) { PlacesSearchData place = new PlacesSearchData(); place.ActualArea = replyMessage.QueryDataBlocks[i].ActualArea; place.BillableArea = replyMessage.QueryDataBlocks[i].BillableArea; place.Desc = replyMessage.QueryDataBlocks[i].Description; place.Dwell = replyMessage.QueryDataBlocks[i].Dwell; place.Flags = (DirectoryManager.PlacesFlags)(byte)replyMessage.QueryDataBlocks[i].Flags; place.GlobalX = replyMessage.QueryDataBlocks[i].GlobalX; place.GlobalY = replyMessage.QueryDataBlocks[i].GlobalY; place.GlobalZ = replyMessage.QueryDataBlocks[i].GlobalZ; place.Name = replyMessage.QueryDataBlocks[i].Name; place.OwnerID = replyMessage.QueryDataBlocks[i].OwnerID; place.Price = replyMessage.QueryDataBlocks[i].Price; place.SimName = replyMessage.QueryDataBlocks[i].SimName; place.SnapshotID = replyMessage.QueryDataBlocks[i].SnapShotID; place.SKU = replyMessage.QueryDataBlocks[i].ProductSku; places.Add(place); } OnPlaces(new PlacesReplyEventArgs(replyMessage.QueryID, places)); } }
private void PlacesReplyEventHandler(string capsKey, IMessage message, Simulator simulator) { if(OnPlacesReply != null) { PlacesReplyMessage replyMessage = (PlacesReplyMessage) message; List<PlacesSearchData> places = new List<PlacesSearchData>(); for(int i = 0; i < replyMessage.QueryDataBlocks.Length; i++) { PlacesSearchData place = new PlacesSearchData(); place.ActualArea = replyMessage.QueryDataBlocks[i].ActualArea; place.BillableArea = replyMessage.QueryDataBlocks[i].BillableArea; place.Desc = replyMessage.QueryDataBlocks[i].Description; place.Dwell = replyMessage.QueryDataBlocks[i].Dwell; place.Flags = (byte)replyMessage.QueryDataBlocks[i].Flags; place.GlobalX = replyMessage.QueryDataBlocks[i].GlobalX; place.GlobalY = replyMessage.QueryDataBlocks[i].GlobalY; place.GlobalZ = replyMessage.QueryDataBlocks[i].GlobalZ; place.Name = replyMessage.QueryDataBlocks[i].Name; place.OwnerID = replyMessage.QueryDataBlocks[i].OwnerID; place.Price = replyMessage.QueryDataBlocks[i].Price; place.SimName = replyMessage.QueryDataBlocks[i].SimName; place.SnapshotID = replyMessage.QueryDataBlocks[i].SnapShotID; places.Add(place); } try { OnPlacesReply(replyMessage.TransactionID, places); } catch (Exception e) { Log.Log(e.Message, Helpers.LogLevel.Error, e); } } }