use bevy::{ prelude::*, render::texture::{AddressMode, FilterMode}, }; use crate::AppState; pub struct LoadedAssets { pub floor: Handle, } impl FromWorld for LoadedAssets { fn from_world(world: &mut World) -> Self { let server = world.get_resource::().unwrap(); let floor = server.load("textures/floor.png"); Self { floor } } } pub fn loading( assets: Res, mut textures: ResMut>, mut state: ResMut>, ) { if let Some(t) = textures.get_mut(&assets.floor) { t.sampler.address_mode_u = AddressMode::MirrorRepeat; t.sampler.address_mode_v = AddressMode::Repeat; t.sampler.address_mode_w = AddressMode::Repeat; t.sampler.mipmap_filter = FilterMode::Linear; state.set(AppState::Game).unwrap(); } }