azalea_client/plugins/
mod.rs1use bevy_app::{PluginGroup, PluginGroupBuilder};
2
3pub mod attack;
4pub mod auto_reconnect;
5pub mod block_update;
6pub mod brand;
7pub mod chat;
8pub mod chat_signing;
9pub mod chunks;
10pub mod client_information;
11pub mod connection;
12pub mod disconnect;
13pub mod events;
14pub mod interact;
15pub mod inventory;
16pub mod join;
17pub mod loading;
18pub mod login;
19pub mod mining;
20pub mod movement;
21pub mod packet;
22pub mod pong;
23pub mod respawn;
24pub mod task_pool;
25pub mod tick_broadcast;
26pub mod tick_counter;
27pub mod tick_end;
28
29pub struct DefaultPlugins;
32
33impl PluginGroup for DefaultPlugins {
34 fn build(self) -> PluginGroupBuilder {
35 #[allow(unused_mut)]
36 let mut group = PluginGroupBuilder::start::<Self>()
37 .add(crate::client::AmbiguityLoggerPlugin)
38 .add(bevy_time::TimePlugin)
39 .add(packet::PacketPlugin)
40 .add(crate::client::AzaleaPlugin)
41 .add(azalea_entity::EntityPlugin)
42 .add(azalea_physics::PhysicsPlugin)
43 .add(events::EventsPlugin)
44 .add(task_pool::TaskPoolPlugin::default())
45 .add(inventory::InventoryPlugin)
46 .add(chat::ChatPlugin)
47 .add(disconnect::DisconnectPlugin)
48 .add(movement::MovementPlugin)
49 .add(interact::InteractPlugin)
50 .add(respawn::RespawnPlugin)
51 .add(mining::MiningPlugin)
52 .add(attack::AttackPlugin)
53 .add(chunks::ChunksPlugin)
54 .add(block_update::BlockUpdatePlugin)
55 .add(tick_end::TickEndPlugin)
56 .add(loading::PlayerLoadedPlugin)
57 .add(brand::BrandPlugin)
58 .add(client_information::ClientInformationPlugin)
59 .add(tick_broadcast::TickBroadcastPlugin)
60 .add(tick_counter::TickCounterPlugin)
61 .add(pong::PongPlugin)
62 .add(connection::ConnectionPlugin)
63 .add(login::LoginPlugin)
64 .add(join::JoinPlugin)
65 .add(auto_reconnect::AutoReconnectPlugin)
66 .add(chat_signing::ChatSigningPlugin);
67 #[cfg(feature = "log")]
68 {
69 group = group.add(bevy_log::LogPlugin::default());
70 }
71 group
72 }
73}