use bevy::math::uvec2; use bevy::prelude::*; use iyes_loopless::prelude::AppLooplessStateExt; use iyes_loopless::state::NextState; use crate::entities::spawner::EntitySpawner; use crate::system::flow::AppState; use crate::world::generation::generate_map; use crate::world::level_map::LevelMapBundle; pub fn spawn_player(mut spawner: EntitySpawner) { log::info!("Spawning player"); spawner.spawn_player(uvec2(25, 25)); spawner .commands .spawn_bundle(LevelMapBundle::generate(50, 50)); } pub fn skip_menu(mut commands: Commands) { commands.insert_resource(NextState(AppState::InGame)); } pub struct DebugPlugin; impl Plugin for DebugPlugin { fn build(&self, app: &mut App) { app.add_enter_system(AppState::Menu, skip_menu) .add_enter_system(AppState::InGame, spawn_player); } }