示例#1
0
        /// <summary>
        /// The publish update.
        /// </summary>
        /// <param name="item">
        /// The publisher.
        /// </param>
        /// <param name="position">
        /// The position.
        /// </param>
        /// <param name="unreliable">
        /// The unreliable.
        /// </param>
        private void PublishUpdate(Item item, float[] position, bool unreliable)
        {
            RadarUpdate updateEvent = GetUpdateEvent(item, position);
            IEventData  eventData   = new EventData((byte)EventCode.RadarUpdate, updateEvent);
            var         message     = new ItemEventMessage(item, eventData, new SendParameters {
                Unreliable = unreliable, ChannelId = Settings.RadarEventChannel
            });

            this.channel.Publish(message);
        }
示例#2
0
 /// <summary>
 /// The publish all.
 /// </summary>
 /// <param name="receiver">
 /// The receiver.
 /// </param>
 private void PublishAll(Peer receiver)
 {
     foreach (KeyValuePair <Item, float[]> entry in this.itemPositions)
     {
         RadarUpdate message   = GetUpdateEvent(entry.Key, entry.Value);
         var         eventData = new EventData((byte)EventCode.RadarUpdate, message);
         receiver.SendEvent(eventData, new SendParameters {
             Unreliable = true, ChannelId = Settings.RadarEventChannel
         });
     }
 }