chunkedge_protocol/packets/configuration/
client_information_c2s.rs

1use chunkedge_binary::{Bounded, Decode, Encode};
2
3use crate::packets::play::client_information_c2s::{ChatMode, DisplayedSkinParts, MainArm};
4use crate::{Packet, PacketState};
5
6#[derive(Clone, Debug, Encode, Decode, Packet)]
7#[packet(state = PacketState::Configuration)]
8pub struct ClientInformationC2s<'a> {
9    pub locale: Bounded<&'a str, 16>,
10    pub view_distance: u8,
11    pub chat_mode: ChatMode,
12    pub chat_colors: bool,
13    pub displayed_skin_parts: DisplayedSkinParts,
14    pub main_arm: MainArm,
15    pub enable_text_filtering: bool,
16    pub allow_server_listings: bool,
17    pub particle_mode: ParticleMode,
18}
19
20#[derive(Clone, Debug, Default, Encode, Decode)]
21pub enum ParticleMode {
22    #[default]
23    All,
24    Decreased,
25    Minimal,
26}