From 97148d01309278dc35a41f1b7fd04bbbe87305b0 Mon Sep 17 00:00:00 2001 From: Ben Frankel Date: Sun, 3 Dec 2023 14:46:13 -0800 Subject: [PATCH] Set up end screen table layout --- src/state/end_screen.rs | 124 +++++++++++++++++--------------------- src/state/title_screen.rs | 6 +- 2 files changed, 60 insertions(+), 70 deletions(-) diff --git a/src/state/end_screen.rs b/src/state/end_screen.rs index b043813..599743b 100644 --- a/src/state/end_screen.rs +++ b/src/state/end_screen.rs @@ -1,11 +1,7 @@ -use bevy::app::AppExit; use bevy::prelude::*; use bevy_asset_loader::prelude::*; -use leafwing_input_manager::common_conditions::action_just_pressed; -use leafwing_input_manager::prelude::*; use crate::config::Config; -use crate::state::AppState; use crate::state::AppState::*; use crate::ui::vh; use crate::ui::vmin; @@ -20,17 +16,8 @@ impl Plugin for EndScreenStatePlugin { fn build(&self, app: &mut App) { app.register_type::() .init_collection::() - .init_resource::>() - .add_plugins(InputManagerPlugin::::default()) .add_systems(OnEnter(EndScreen), enter_end_screen) - .add_systems(OnExit(EndScreen), exit_end_screen) - .add_systems( - Update, - ( - end_screen_action_restart.run_if(action_just_pressed(EndScreenAction::Restart)), - end_screen_action_quit.run_if(action_just_pressed(EndScreenAction::Quit)), - ), - ); + .add_systems(OnExit(EndScreen), exit_end_screen); } } @@ -54,13 +41,13 @@ const TABLE_HEADER_TEXT_STYLE: TextStyle = TextStyle { }; const TABLE_HEADER_TEXT: [&str; 4] = ["Criteria", "Rank", "Score", "Raw Score"]; -const _TABLE_TEXT_STYLE: TextStyle = TextStyle { +const TABLE_TEXT_STYLE: TextStyle = TextStyle { font: FONT_HANDLE, font_size: 0.0, color: Color::rgb(0.737, 0.737, 0.737), }; -const TABLE_FONT_SIZE: Val = Val::Vw(3.0); -const _TABLE_CRITERIA_TEXT: [&str; 6] = [ +const TABLE_FONT_SIZE: Val = Val::Vw(2.5); +const TABLE_CRITERIA_TEXT: [&str; 6] = [ "Fun", "Presentation", "Theme Interpretation", @@ -71,28 +58,13 @@ const _TABLE_CRITERIA_TEXT: [&str; 6] = [ #[derive(AssetCollection, Resource, Reflect, Default)] #[reflect(Resource)] -pub struct EndScreenAssets {} - -#[derive(Actionlike, Reflect, PartialEq, Eq, Hash, Clone)] -enum EndScreenAction { - Restart, - Quit, +pub struct EndScreenAssets { + // TODO: Music / SFX maybe } fn enter_end_screen(mut commands: Commands, root: Res, config: Res) { commands.insert_resource(ClearColor(config.bg_color)); - commands.insert_resource( - InputMap::default() - .insert(MouseButton::Left, EndScreenAction::Restart) - .insert(GamepadButtonType::Start, EndScreenAction::Restart) - .insert(KeyCode::Return, EndScreenAction::Restart) - .insert(KeyCode::Space, EndScreenAction::Restart) - .insert(KeyCode::Escape, EndScreenAction::Quit) - .insert(KeyCode::Q, EndScreenAction::Quit) - .build(), - ); - let screen = commands .spawn(( Name::new("EndScreen"), @@ -101,8 +73,7 @@ fn enter_end_screen(mut commands: Commands, root: Res, config: Res, config: Res, config: Res) { - commands.remove_resource::>(); commands.entity(root.ui).despawn_descendants(); } - -fn end_screen_action_restart(mut next_state: ResMut>) { - next_state.set(TitleScreen); -} - -fn end_screen_action_quit(mut app_exit: EventWriter) { - app_exit.send(AppExit); -} diff --git a/src/state/title_screen.rs b/src/state/title_screen.rs index 0ccba33..0d309cd 100644 --- a/src/state/title_screen.rs +++ b/src/state/title_screen.rs @@ -67,7 +67,9 @@ const BUTTON_BORDER_COLOR: Color = Color::rgb(0.118, 0.306, 0.820); #[derive(AssetCollection, Resource, Reflect, Default)] #[reflect(Resource)] -pub struct TitleScreenAssets {} +pub struct TitleScreenAssets { + // TODO: Music / SFX maybe +} fn enter_title_screen(mut commands: Commands, root: Res, config: Res) { commands.insert_resource(ClearColor(config.bg_color)); @@ -172,7 +174,7 @@ fn enter_title_screen(mut commands: Commands, root: Res, config: Res