1
2
Fork 0
mirror of https://github.com/mat-1/azalea.git synced 2025-08-02 06:16:04 +00:00

allow disabling Event::Packet with a crate feature

This commit is contained in:
mat 2025-04-17 10:15:14 -12:45
parent 43d7c428e3
commit ad45cf5431
4 changed files with 12 additions and 10 deletions

View file

@ -41,6 +41,7 @@ uuid.workspace = true
anyhow.workspace = true
[features]
default = ["log"]
default = ["log", "packet-event"]
# enables bevy_log::LogPlugin by default
log = ["bevy_log"]
packet-event = []

View file

@ -6,9 +6,7 @@ use std::sync::Arc;
use azalea_chat::FormattedText;
use azalea_core::tick::GameTick;
use azalea_entity::{Dead, InLoadedChunk};
use azalea_protocol::packets::game::{
ClientboundGamePacket, c_player_combat_kill::ClientboundPlayerCombatKill,
};
use azalea_protocol::packets::game::c_player_combat_kill::ClientboundPlayerCombatKill;
use azalea_world::{InstanceName, MinecraftEntityId};
use bevy_app::{App, Plugin, PreUpdate, Update};
use bevy_ecs::{
@ -27,8 +25,7 @@ use crate::{
chat::{ChatPacket, ChatReceivedEvent},
disconnect::DisconnectEvent,
packet::game::{
AddPlayerEvent, DeathEvent, KeepAliveEvent, ReceiveGamePacketEvent, RemovePlayerEvent,
UpdatePlayerEvent,
AddPlayerEvent, DeathEvent, KeepAliveEvent, RemovePlayerEvent, UpdatePlayerEvent,
},
};
@ -94,6 +91,7 @@ pub enum Event {
Chat(ChatPacket),
/// Happens 20 times per second, but only when the world is loaded.
Tick,
#[cfg(feature = "packet-event")]
/// We received a packet from the server.
///
/// ```
@ -111,7 +109,7 @@ pub enum Event {
/// # }
/// # }
/// ```
Packet(Arc<ClientboundGamePacket>),
Packet(Arc<azalea_protocol::packets::game::ClientboundGamePacket>),
/// A player joined the game (or more specifically, was added to the tab
/// list).
AddPlayer(PlayerInfo),
@ -146,6 +144,7 @@ impl Plugin for EventsPlugin {
chat_listener,
login_listener,
spawn_listener,
#[cfg(feature = "packet-event")]
packet_listener,
add_player_listener,
update_player_listener,
@ -215,9 +214,10 @@ pub fn tick_listener(query: Query<&LocalPlayerEvents, With<InstanceName>>) {
}
}
#[cfg(feature = "packet-event")]
pub fn packet_listener(
query: Query<&LocalPlayerEvents>,
mut events: EventReader<ReceiveGamePacketEvent>,
mut events: EventReader<super::packet::game::ReceiveGamePacketEvent>,
) {
for event in events.read() {
if let Ok(local_player_events) = query.get(event.entity) {

View file

@ -532,7 +532,7 @@ impl GamePacketHandler<'_> {
tab_list.insert(updated_info.profile.uuid, info.clone());
add_player_events.send(AddPlayerEvent {
entity: self.player,
info: info.clone(),
info,
});
} else if let Some(info) = tab_list.get_mut(&updated_info.profile.uuid) {
// `else if` because the block for add_player above

View file

@ -53,7 +53,7 @@ rand.workspace = true
anyhow.workspace = true
[features]
default = ["log", "serde"]
default = ["log", "serde", "packet-event"]
# enables bevy_log::LogPlugin by default
log = ["azalea-client/log"]
serde = [
@ -62,6 +62,7 @@ serde = [
"azalea-registry/serde",
"azalea-world/serde",
]
packet-event = ["azalea-client/packet-event"]
[[bench]]
name = "pathfinder"