chunkedge_protocol/packets/play/
player_abilities_s2c.rs

1use bevy_ecs::prelude::Component;
2use bitfield_struct::bitfield;
3use chunkedge_binary::{Decode, Encode};
4
5use crate::Packet;
6
7#[derive(Clone, Debug, Encode, Decode, Packet)]
8pub struct PlayerAbilitiesS2c {
9    pub flags: PlayerAbilitiesFlags,
10    pub flying_speed: f32,
11    pub fov_modifier: f32,
12}
13
14#[bitfield(u8)]
15#[derive(PartialEq, Eq, Encode, Decode, Component)]
16pub struct PlayerAbilitiesFlags {
17    pub invulnerable: bool,
18    pub flying: bool,
19    pub allow_flying: bool,
20    pub instant_break: bool,
21    #[bits(4)]
22    _pad: u8,
23}