use gamestates and assetloader
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
use super::AimState;
|
||||
use crate::{
|
||||
GameState,
|
||||
backpack::BackpackHead,
|
||||
heads_ui::HeadsImages,
|
||||
loading_assets::UIAssets,
|
||||
npc::{Hitpoints, NpcHead},
|
||||
};
|
||||
use bevy::prelude::*;
|
||||
@@ -20,15 +22,11 @@ struct TargetUi {
|
||||
}
|
||||
|
||||
pub fn plugin(app: &mut App) {
|
||||
app.add_systems(Startup, setup);
|
||||
app.add_systems(Update, (sync, update));
|
||||
app.add_systems(OnEnter(GameState::Playing), setup);
|
||||
app.add_systems(Update, (sync, update).run_if(in_state(GameState::Playing)));
|
||||
}
|
||||
|
||||
fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
|
||||
let bg = asset_server.load("ui/head_bg.png");
|
||||
let regular = asset_server.load("ui/head_regular.png");
|
||||
let damage = asset_server.load("ui/head_damage.png");
|
||||
|
||||
fn setup(mut commands: Commands, assets: Res<UIAssets>) {
|
||||
commands
|
||||
.spawn((
|
||||
Name::new("target-ui"),
|
||||
@@ -41,7 +39,12 @@ fn setup(mut commands: Commands, asset_server: Res<AssetServer>) {
|
||||
},
|
||||
))
|
||||
.with_children(|parent| {
|
||||
spawn_head_ui(parent, bg.clone(), regular.clone(), damage.clone());
|
||||
spawn_head_ui(
|
||||
parent,
|
||||
assets.head_bg.clone(),
|
||||
assets.head_regular.clone(),
|
||||
assets.head_damage.clone(),
|
||||
);
|
||||
});
|
||||
|
||||
commands.insert_resource(TargetUi::default());
|
||||
|
||||
Reference in New Issue
Block a user