34 lines
668 B
Rust
34 lines
668 B
Rust
mod backpack_ui;
|
|
mod ui_head_state;
|
|
|
|
use crate::{
|
|
GameState,
|
|
heads::{HEAD_COUNT, HeadState},
|
|
};
|
|
use bevy::prelude::*;
|
|
|
|
pub use backpack_ui::BackpackAction;
|
|
pub use ui_head_state::UiHeadState;
|
|
|
|
#[derive(Resource, Default)]
|
|
pub struct Backpack {
|
|
pub heads: Vec<HeadState>,
|
|
}
|
|
|
|
#[derive(Event)]
|
|
pub struct BackbackSwapEvent(pub usize);
|
|
|
|
pub fn plugin(app: &mut App) {
|
|
app.add_plugins(backpack_ui::plugin);
|
|
|
|
app.add_systems(OnEnter(GameState::Playing), setup);
|
|
}
|
|
|
|
fn setup(mut commands: Commands) {
|
|
commands.insert_resource(Backpack {
|
|
heads: (0usize..HEAD_COUNT)
|
|
.map(|i| HeadState::new(i, 10))
|
|
.collect(),
|
|
});
|
|
}
|