fix(assets): wait for assets load

This commit is contained in:
Kristofers Solo 2025-01-06 16:42:48 +02:00
parent 7ff943e829
commit 2341ee664e
5 changed files with 13 additions and 7 deletions

2
Cargo.lock generated
View File

@ -3129,7 +3129,7 @@ dependencies = [
[[package]]
name = "maze-ascension"
version = "1.0.1"
version = "1.0.2"
dependencies = [
"anyhow",
"bevy",

View File

@ -1,7 +1,7 @@
[package]
name = "maze-ascension"
authors = ["Kristofers Solo <dev@kristofers.xyz>"]
version = "1.0.1"
version = "1.0.2"
edition = "2021"
[dependencies]

View File

@ -37,8 +37,8 @@ pub struct MazeAssets {
impl MazeAssets {
/// Creates a new instance of MazeAssets with all necessary meshes and materials.
pub fn new(
meshes: &mut ResMut<Assets<Mesh>>,
materials: &mut ResMut<Assets<StandardMaterial>>,
meshes: &mut Assets<Mesh>,
materials: &mut Assets<StandardMaterial>,
global_config: &GlobalMazeConfig,
) -> Self {
let custom_materials = RosePineDawn::iter()

View File

@ -1,4 +1,4 @@
mod assets;
pub mod assets;
pub mod commands;
pub mod components;
mod systems;

View File

@ -4,6 +4,8 @@
use bevy::prelude::*;
use crate::{
hint::assets::HintAssets,
player::assets::PlayerAssets,
screens::Screen,
theme::{interaction::InteractionAssets, prelude::*},
};
@ -33,6 +35,10 @@ fn continue_to_title_screen(mut next_screen: ResMut<NextState<Screen>>) {
next_screen.set(Screen::Title);
}
const fn all_assets_loaded(interaction_assets: Option<Res<InteractionAssets>>) -> bool {
interaction_assets.is_some()
const fn all_assets_loaded(
player_assets: Option<Res<PlayerAssets>>,
interaction_assets: Option<Res<InteractionAssets>>,
hints_assets: Option<Res<HintAssets>>,
) -> bool {
player_assets.is_some() && interaction_assets.is_some() && hints_assets.is_some()
}