From 7dd999986045244404a845534d90638af5e1633b Mon Sep 17 00:00:00 2001 From: extrawurst Date: Wed, 26 Mar 2025 08:16:54 +0100 Subject: [PATCH] use asset server for impact atlas --- src/loading_assets.rs | 7 +++++++ src/shooting.rs | 11 +++-------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/loading_assets.rs b/src/loading_assets.rs index e7f3f5a..bae3d69 100644 --- a/src/loading_assets.rs +++ b/src/loading_assets.rs @@ -38,6 +38,12 @@ pub struct UIAssets { pub camera: Handle, } +#[derive(AssetCollection, Resource)] +pub struct GameAssets { + #[asset(path = "textures/fx/impact.png")] + pub impact_atlas: Handle, +} + pub struct LoadingPlugin; impl Plugin for LoadingPlugin { fn build(&self, app: &mut App) { @@ -45,6 +51,7 @@ impl Plugin for LoadingPlugin { LoadingState::new(GameState::AssetLoading) .continue_to_state(GameState::MapLoading) .load_collection::() + .load_collection::() .load_collection::(), ); } diff --git a/src/shooting.rs b/src/shooting.rs index 41b8cc1..bc1dfb2 100644 --- a/src/shooting.rs +++ b/src/shooting.rs @@ -2,6 +2,7 @@ use crate::{ GameState, aim::AimState, billboards::Billboard, + loading_assets::GameAssets, npc::Hit, physics_layers::GameLayer, player::{Player, PlayerRig}, @@ -49,18 +50,12 @@ pub fn plugin(app: &mut App) { app.add_observer(on_trigger_state); } -fn setup( - mut commands: Commands, - asset_server: Res, - mut sprite_params: Sprite3dParams, -) { - // TODO: use asset server - let image = asset_server.load("textures/fx/impact.png"); +fn setup(mut commands: Commands, assets: Res, mut sprite_params: Sprite3dParams) { let layout = TextureAtlasLayout::from_grid(UVec2::splat(256), 7, 6, None, None); let texture_atlas_layout = sprite_params.atlas_layouts.add(layout); commands.insert_resource(ShotAssets { - image, + image: assets.impact_atlas.clone(), layout: texture_atlas_layout, }); }