1use crate::{buffer::Buffer, packet::Packet};
2
3#[derive(Debug, Clone)]
4pub struct PlayerVoicePacket{
5 pub id: String,
6 pub packet: Vec<u8>
7}
8
9impl Packet for PlayerVoicePacket{
10 fn to_buf(self) -> Buffer {
11 let mut buf = Buffer::empty();
12 buf.set_u16(7);
13
14 buf.set_str(self.id);
15
16 buf.set_u32(self.packet.len() as u32);
17 buf.set_u8s(&self.packet);
18
19 buf
20 }
21
22 fn from_buf(buf: &mut Buffer) -> Self {
23 let id = buf.get_str();
24
25 let length = buf.get_u32();
26 let packet = buf.get_u8s(length as usize).to_vec();
27
28 Self { id, packet }
29 }
30}