azalea_protocol/packets/game/
c_login.rs

1use azalea_buf::AzBuf;
2use azalea_core::resource_location::ResourceLocation;
3use azalea_protocol_macros::ClientboundGamePacket;
4use azalea_world::MinecraftEntityId;
5
6use crate::packets::common::CommonPlayerSpawnInfo;
7
8/// The first packet sent by the server to the client after login.
9///
10/// This packet contains information about the state of the player, the
11/// world, and the registry.
12#[derive(Clone, Debug, AzBuf, ClientboundGamePacket)]
13pub struct ClientboundLogin {
14    pub player_id: MinecraftEntityId,
15    pub hardcore: bool,
16    pub levels: Vec<ResourceLocation>,
17    #[var]
18    pub max_players: i32,
19    #[var]
20    pub chunk_radius: u32,
21    #[var]
22    pub simulation_distance: u32,
23    pub reduced_debug_info: bool,
24    pub show_death_screen: bool,
25    pub do_limited_crafting: bool,
26    pub common: CommonPlayerSpawnInfo,
27    pub enforces_secure_chat: bool,
28}