use bevy::{dev_tools::states::log_transitions, prelude::*};
#[cfg(feature = "hot_patch")]
use bevy_simple_subsecond_system::prelude::*;
mod debug_ui;
mod input;
mod validate_preloading;
use crate::screens::{Screen, loading::LoadingScreen};
pub(super) fn plugin(app: &mut App) {
app.add_systems(
Update,
(log_transitions::<Screen>, log_transitions::<LoadingScreen>).chain(),
);
app.add_plugins((
#[cfg(feature = "hot_patch")]
SimpleSubsecondPlugin::default(),
#[cfg(feature = "bevy_remote")]
(
bevy::remote::RemotePlugin::default(),
bevy::remote::http::RemoteHttpPlugin::default(),
),
debug_ui::plugin,
input::plugin,
validate_preloading::plugin,
));
}