public void VoiceEffect(float volumeLevel)
{
ViewerEffectPacket effect = new ViewerEffectPacket();
effect.AgentData.AgentID = Client.Self.AgentID;
effect.AgentData.SessionID = Client.Self.SessionID;
effect.Effect = new ViewerEffectPacket.EffectBlock[1];
effect.Effect[0] = new ViewerEffectPacket.EffectBlock();
effect.Effect[0].AgentID = Client.Self.AgentID;
effect.Effect[0].Color = new byte[4];
effect.Effect[0].Duration = 0.0f;
effect.Effect[0].ID = new UUID("F6EB8CE4-1E08-4441-8AE7-762C8E6529AE");
effect.Effect[0].Type = (byte)EffectType.VolumeLevel;
byte[] typeData = new byte[24];
Buffer.BlockCopy(Client.Self.AgentID.GetBytes(), 0, typeData, 0, 16);
Buffer.BlockCopy(BitConverter.GetBytes(volumeLevel), 0, typeData, 16, 4);
Buffer.BlockCopy(BitConverter.GetBytes(Client.Self.LocalID), 0, typeData, 20, 4);
effect.Effect[0].TypeData = typeData;
Client.Network.SendPacket(effect);
}