Skip to content

Commit 1c8fb54

Browse files
authored
Merge pull request #11 from signal32/menu-tweaks
UI Overhaul
2 parents 5d83ea7 + b89dc65 commit 1c8fb54

File tree

8 files changed

+666
-689
lines changed

8 files changed

+666
-689
lines changed

assets/textures/grass_tile_64.png

4.03 KB
Loading

src/main.rs

Lines changed: 9 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
mod projectile;
22
mod physics;
3-
mod menu;
4-
mod pause;
53
mod bird;
64
mod util;
75
mod level;
6+
mod ui;
87

98
use std::path::PathBuf;
109

@@ -14,8 +13,7 @@ use clap::{Parser, ValueEnum};
1413
use level::LevelPlugin;
1514
use physics::PhysicsPlugin;
1615
use projectile::{ProjectileLauncher, ProjectilePlugin};
17-
use menu::MenuPlugin;
18-
use pause::PausePlugin;
16+
use ui::UiPlugin;
1917

2018
#[derive(Parser, Debug)]
2119
#[clap(author, version, about, long_about = None)]
@@ -59,20 +57,18 @@ fn main() {
5957
},),
6058
PhysicsPlugin,
6159
ProjectilePlugin,
62-
MenuPlugin,
63-
PausePlugin,
6460
BirdPlugin,
61+
UiPlugin,
6562
match args.level {
6663
Some(level) => LevelPlugin { default_level: PathBuf::from(level) },
6764
None => LevelPlugin::default()
6865
}
6966
));
7067
app.add_systems(Startup, setup_sys);
71-
app.add_systems(Update, ((
72-
player_move_sys,
73-
pause_menu_listener_sys
74-
).run_if(in_state(GameState::Game)),
75-
));
68+
app.add_systems(Update,
69+
(player_move_sys)
70+
.run_if(in_state(GameState::Game)),
71+
);
7672

7773
app.init_state::<GameState>();
7874
if let Some(state) = args.initial_state {
@@ -86,15 +82,11 @@ fn main() {
8682
pub(crate) enum GameState {
8783
Game,
8884
Pause,
89-
#[default]
9085
Menu,
86+
#[default]
9187
Splash,
9288
}
9389

94-
// a label component to tell us which things are loaded in the Game GameState
95-
#[derive(Component)]
96-
struct OnGameScreen;
97-
9890
#[derive(Component)]
9991
struct Player {
10092
health: i32
@@ -118,9 +110,7 @@ fn setup_sys(
118110
Mesh2d(meshes.add(Annulus::new(25.0, 50.0))),
119111
MeshMaterial2d(materials.add(Color::WHITE)),
120112
Transform::from_xyz(0., - window_height / 2. + 75., 0.),
121-
OnGameScreen,
122113
));
123-
124114
}
125115

126116
fn player_move_sys(
@@ -139,60 +129,4 @@ fn player_move_sys(
139129
player_tf.translation.x = (player_tf.translation.x + move_distance).min(width / 2.)
140130
}
141131
}
142-
}
143-
144-
fn pause_menu_listener_sys(
145-
keys: Res<ButtonInput<KeyCode>>,
146-
mut game_state: ResMut<NextState<GameState>>
147-
) {
148-
if keys.just_pressed(KeyCode::Escape) {
149-
game_state.set(GameState::Pause);
150-
info!("game paused");
151-
}
152-
}
153-
154-
// fn pause_menu_listener_sys(
155-
// keys: Res<ButtonInput<KeyCode>>,
156-
// mut game_state: ResMut<NextState<GameState>>,
157-
// mut menu_state: ResMut<NextState<MenuState>>
158-
// ) {
159-
// if keys.just_pressed(KeyCode::Escape) {
160-
// match game_state {
161-
// GameState::Game => {
162-
// game_state.set(GameState::Pause);
163-
// info!("game state changed to paused!");
164-
// }
165-
// GameState::Menu => {
166-
// match menu_state {
167-
// MenuState::MainMenu => {
168-
// menu_state.set(MenuState::Disabled);
169-
// game_state.set(GameState::Game);
170-
// info!("menu state is now diabled, and game state is game");
171-
// }
172-
// MenuState::Settings => {
173-
// menu_state.set(MenuState::MainMenu);
174-
// info!("menu state is now main menu");
175-
// }
176-
// _ => {
177-
// panic!("HOW DID WE GET HERE???");
178-
// }
179-
// }
180-
// }
181-
// GameState::Pause => {
182-
// info!("THIS NEEDS DOING YAS COME ON");
183-
// }
184-
// GameState::Splash => {
185-
// // do nothing lol
186-
// info!("HAH silly, u can't exit the splash screen, just wait.");
187-
// }
188-
// }
189-
// }
190-
// }
191-
192-
// stole this directly from an example but it seems a sensible way of removing
193-
// unneeded Entities with a given Component indiscriminantly
194-
fn despawn_screen<T: Component>(to_despawn: Query<Entity, With<T>>, mut commands: Commands) {
195-
for entity in &to_despawn {
196-
commands.entity(entity).despawn_recursive();
197-
}
198-
}
132+
}

0 commit comments

Comments
 (0)