ghast-protocol 0.2.0

Minecraft Java Edition network protocol for the ghast client library: generated per-version packets, framing, compression, encryption, NBT
Documentation
// @generated by ghast-codegen-protocol from PrismarineJS minecraft-data 3.119.0
// (data/pc/1.16.2/protocol.json, Minecraft 1.16.5). Do not edit; run `cargo run -p ghast-codegen-protocol`.
// minecraft-data is MIT licensed, Copyright (c) 2015 PrismarineJS; see ../NOTICE.

//! Protocol 754 (Minecraft 1.16.4 – 1.16.5), generated from minecraft-data.
//!
//! One module per connection state, each with `clientbound` and `serverbound`
//! packet structs, an enum of all packets and the packet `id` constants.

pub mod handshaking;
pub mod login;
pub mod play;
pub mod status;
pub mod types;

/// Marker type for protocol 754 (Minecraft 1.16.4 – 1.16.5).
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash)]
pub struct V1_16_5;

impl crate::packet::Version for V1_16_5 {
    const PROTOCOL: i32 = 754;
    const NAME: &'static str = "1.16.5";
    const POSITION_LAYOUT: crate::types::PositionLayout = crate::types::PositionLayout::Xzy;
    type HandshakingServerbound = handshaking::serverbound::ServerboundHandshakingPacket;
    type StatusClientbound = status::clientbound::ClientboundStatusPacket;
    type StatusServerbound = status::serverbound::ServerboundStatusPacket;
    type LoginClientbound = login::clientbound::ClientboundLoginPacket;
    type LoginServerbound = login::serverbound::ServerboundLoginPacket;
    type PlayClientbound = play::clientbound::ClientboundPlayPacket;
    type PlayServerbound = play::serverbound::ServerboundPlayPacket;
}