mod dynamic;
mod fixed;
pub use dynamic::*;
pub use fixed::*;
use bevy::{ecs::schedule::SystemConfigs, prelude::*, state::state::FreelyMutableState};
use super::{state::is_running, ShowIntroScreen, IntroPreferences};
pub trait IntroDuration: Resource + Clone {
fn configure_duration<S, D, U>(&self, app: &mut App, preferences: &IntroPreferences<S, D, U>)
where
S: States + FreelyMutableState,
D: IntroDuration,
U: ShowIntroScreen;
fn only_run_if<M>(value: impl IntoSystemConfigs<M>) -> SystemConfigs {
value.run_if(is_running)
}
}