private void SendPreloadSoundsPacket(QueuedInterestListEvent[] eventDatas, IScenePresence presence) { if (!(presence is LLAgent) || presence.InterestList == null) { return; } LLAgent agent = (LLAgent)presence; PreloadSoundPacket preload = new PreloadSoundPacket(); preload.DataBlock = new PreloadSoundPacket.DataBlockBlock[eventDatas.Length]; for (int i = 0; i < eventDatas.Length; i++) { object[] state = (object[])eventDatas[i].Event.State; ISceneEntity source = (ISceneEntity)state[0]; UUID soundID = (UUID)state[1]; preload.DataBlock[i] = new PreloadSoundPacket.DataBlockBlock { ObjectID = source.ID, OwnerID = source.OwnerID, SoundID = soundID }; } m_udp.SendPacket(agent, preload, ThrottleCategory.Task, true); }
/// <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 PreloadSoundHandler(object sender, PacketReceivedEventArgs e) { if (m_PreloadSound != null) { PreloadSoundPacket preload = (PreloadSoundPacket)e.Packet; foreach (PreloadSoundPacket.DataBlockBlock data in preload.DataBlock) { OnPreloadSound(new PreloadSoundEventArgs(e.Simulator, data.SoundID, data.OwnerID, data.ObjectID)); } } }
protected void PreloadSoundHandler(object sender, PacketReceivedEventArgs e) { var simulator = e.Simulator; var packet = e.Packet; if (!MaintainSounds) return; if (!IsMaster(simulator)) return; PreloadSoundPacket preload = (PreloadSoundPacket)packet; foreach (PreloadSoundPacket.DataBlockBlock data in preload.DataBlock) { Sound_OnPreloadSound(this, new PreloadSoundEventArgs(simulator, data.SoundID, data.OwnerID, data.ObjectID)); } }
protected void PreloadSoundHandler(Packet packet, Simulator simulator) { PreloadSoundPacket preload = (PreloadSoundPacket)packet; if (OnPreloadSound != null) { foreach (PreloadSoundPacket.DataBlockBlock data in preload.DataBlock) { try { OnPreloadSound(data.SoundID, data.OwnerID, data.ObjectID); } catch (Exception e) { Logger.Log(e.Message, Helpers.LogLevel.Error, Client, e); } } } }
private void SendPreloadSoundsPacket(QueuedInterestListEvent[] eventDatas, IScenePresence presence) { if (!(presence is LLAgent) || presence.InterestList == null) return; LLAgent agent = (LLAgent)presence; PreloadSoundPacket preload = new PreloadSoundPacket(); preload.DataBlock = new PreloadSoundPacket.DataBlockBlock[eventDatas.Length]; for (int i = 0; i < eventDatas.Length; i++) { object[] state = (object[])eventDatas[i].Event.State; ISceneEntity source = (ISceneEntity)state[0]; UUID soundID = (UUID)state[1]; preload.DataBlock[i] = new PreloadSoundPacket.DataBlockBlock { ObjectID = source.ID, OwnerID = source.OwnerID, SoundID = soundID }; } m_udp.SendPacket(agent, preload, ThrottleCategory.Task, true); }