Skip to main content

nurtex_protocol/packets/login/
union.rs

1use nurtex_derive::PacketUnion;
2
3use crate::packets::login::{
4  ClientsideCookieRequest, ClientsideEncryptionRequest, ClientsideLoginDisconnect, ClientsideLoginSuccess, ClientsidePluginRequest, ClientsideSetCompression,
5  ServersideCookieResponse, ServersideEncryptionResponse, ServersideLoginAcknowledged, ServersideLoginStart, ServersidePluginResponse,
6};
7
8#[derive(Clone, Debug, PartialEq, PacketUnion)]
9pub enum ClientsideLoginPacket {
10  #[packet_id = 0x00]
11  Disconnect(ClientsideLoginDisconnect),
12  #[packet_id = 0x01]
13  EncryptionRequest(ClientsideEncryptionRequest),
14  #[packet_id = 0x02]
15  LoginSuccess(ClientsideLoginSuccess),
16  #[packet_id = 0x03]
17  Compression(ClientsideSetCompression),
18  #[packet_id = 0x04]
19  PluginRequest(ClientsidePluginRequest),
20  #[packet_id = 0x05]
21  CookieRequest(ClientsideCookieRequest),
22}
23
24#[derive(Clone, Debug, PartialEq, PacketUnion)]
25pub enum ServersideLoginPacket {
26  #[packet_id = 0x00]
27  LoginStart(ServersideLoginStart),
28  #[packet_id = 0x01]
29  EncryptionResponse(ServersideEncryptionResponse),
30  #[packet_id = 0x02]
31  PluginResponse(ServersidePluginResponse),
32  #[packet_id = 0x03]
33  LoginAcknowledged(ServersideLoginAcknowledged),
34  #[packet_id = 0x04]
35  CookieResponse(ServersideCookieResponse),
36}