use aeronet_websocket::client::WebSocketClientPlugin; use bevy::a11y::AccessibilityPlugin; use crate::client::ClientPlugin; use bevy::app::{PanicHandlerPlugin, PluginGroup, PluginGroupBuilder, ScheduleRunnerPlugin}; use bevy::dev_tools::picking_debug::DebugPickingPlugin; use bevy::diagnostic::{DiagnosticsPlugin, FrameCountPlugin}; use bevy::ecs::schedule::ScheduleLabel; use bevy::input::InputPlugin; use bevy::input_focus::InputDispatchPlugin; use bevy::log::LogPlugin; use bevy::state::app::StatesPlugin; use bevy::time::TimePlugin; use crate::prelude::*; use leafwing_input_manager::plugin::InputManagerPlugin; pub struct ClientPluginGroup; impl PluginGroup for ClientPluginGroup { fn build(self) -> PluginGroupBuilder { PluginGroupBuilder::start::() .add_group( DefaultPlugins.build() .disable::() .disable::() .disable::() .disable::() .disable::() .disable::() .disable::() .disable::() ) .add(DebugPickingPlugin) .add(InputDispatchPlugin) .add(InputManagerPlugin::::default()) .add(WebSocketClientPlugin) //.add(bevy_replicon::client::ClientPlugin) //.add(bevy_replicon::client::message::ClientMessagePlugin) //.add(AeronetRepliconClientPlugin) } } #[derive(ScheduleLabel, Clone, Eq, Debug, Hash, PartialEq)] pub struct DontRunSchedule;