use bevy::{log::LogPlugin, prelude::*, time::common_conditions::on_timer};
use bevy_seedling::prelude::*;
use std::time::Duration;
fn main() {
App::new()
.add_plugins((
MinimalPlugins,
LogPlugin::default(),
AssetPlugin::default(),
SeedlingPlugin::default(),
))
.add_systems(Startup, startup)
.add_systems(
Update,
toggle_playback.run_if(on_timer(Duration::from_millis(1500))),
)
.run();
}
fn startup(server: Res<AssetServer>, mut commands: Commands) {
commands.spawn(SamplePlayer::new(server.load("caw.ogg")).looping());
commands.spawn(SamplePlayer::new(server.load("crow_ambience.ogg")).looping());
}
fn toggle_playback(
mut settings: Query<&mut PlaybackSettings, With<SamplePlayer>>,
) {
info!("toggled playback!");
for mut settings in settings.iter_mut() {
if *settings.play {
settings.pause();
} else {
settings.play();
}
}
}