use packet_macros::{LoginPacket, McBuf}; #[derive(Clone, Debug, McBuf, LoginPacket)] pub struct ServerboundHelloPacket { pub username: String, pub public_key: Option, } pub struct ProfilePublicKey { pub data: ProfilePublicKeyData, } #[derive(Clone, Debug, McBuf)] pub struct ProfilePublicKeyData { pub expires_at: u64, pub key: Vec, pub key_signature: Vec, }