Skip to content
Snippets Groups Projects
startup.rs 787 B
Newer Older
Louis's avatar
Louis committed
use bevy::asset::LoadState;
use bevy::prelude::*;
use iyes_loopless::prelude::NextState;

use crate::assets::AssetTypeLoader;
use crate::system::flow::AppState;

pub fn start_preload_resources(mut commands: Commands) {
	// TODO: Add preload commands here

	commands.insert_resource(NextState(AppState::Setup))
}

pub fn start_load_resources(mut loader: AssetTypeLoader) {
Louis's avatar
Louis committed
	loader.load_images(&[("jamsplash.png", "splash")]);
Louis's avatar
Louis committed
	loader.load_audio(&[("splash_sting.mp3", "splash_sting")]);
}

pub fn check_load_resources(mut commands: Commands, loader: AssetTypeLoader) {
	let load_states = loader.get_all_load_state();
	if load_states.iter().all(|state| *state == LoadState::Loaded) {
		log::info!("Assets loaded successfully");
		commands.insert_resource(NextState(AppState::Splash))
	}
}