use nurtex_derive::PacketUnion;
use crate::packets::login::{
ClientsideCookieRequest, ClientsideEncryptionRequest, ClientsideLoginDisconnect, ClientsideLoginSuccess, ClientsidePluginRequest, ClientsideSetCompression,
ServersideCookieResponse, ServersideEncryptionResponse, ServersideLoginAcknowledged, ServersideLoginStart, ServersidePluginResponse,
};
#[derive(Clone, Debug, PartialEq, PacketUnion)]
pub enum ClientsideLoginPacket {
#[packet_id = 0x00]
Disconnect(ClientsideLoginDisconnect),
#[packet_id = 0x01]
EncryptionRequest(ClientsideEncryptionRequest),
#[packet_id = 0x02]
LoginSuccess(ClientsideLoginSuccess),
#[packet_id = 0x03]
Compression(ClientsideSetCompression),
#[packet_id = 0x04]
PluginRequest(ClientsidePluginRequest),
#[packet_id = 0x05]
CookieRequest(ClientsideCookieRequest),
}
#[derive(Clone, Debug, PartialEq, PacketUnion)]
pub enum ServersideLoginPacket {
#[packet_id = 0x00]
LoginStart(ServersideLoginStart),
#[packet_id = 0x01]
EncryptionResponse(ServersideEncryptionResponse),
#[packet_id = 0x02]
PluginResponse(ServersidePluginResponse),
#[packet_id = 0x03]
LoginAcknowledged(ServersideLoginAcknowledged),
#[packet_id = 0x04]
CookieResponse(ServersideCookieResponse),
}