Skip to content

Commit 4efeb57

Browse files
committed
stray files
1 parent ac4925f commit 4efeb57

3 files changed

Lines changed: 28 additions & 75 deletions

File tree

src/menu/pause.rs

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,40 @@
11
use crate::menu::{
2-
state::GameMenuState,
3-
systems::pause_menu::{
4-
input_handler::esc_key_system, interactions::pause_menu_action, setup::setup_pause_menu,
5-
},
2+
// cleanup::despawn_screen, // Commented out - definition not found
3+
// components::OnPauseMenuScreen, // Commented out - definition not found
4+
state::{AppState, GameMenuState},
65
};
76
use bevy::prelude::*;
87

9-
/// Plugin for pause menu functionality
8+
use super::systems::pause_menu::{
9+
// Correct path for systems
10+
input_handler::esc_key_system,
11+
interactions::pause_menu_action,
12+
setup::setup_pause_menu,
13+
};
14+
15+
/// Plugin for the pause menu
1016
pub struct PauseMenuPlugin;
1117

1218
impl Plugin for PauseMenuPlugin {
1319
fn build(&self, app: &mut App) {
1420
app
15-
// Register systems
21+
// Enter pause menu setup
1622
.add_systems(OnEnter(GameMenuState::PauseMenu), setup_pause_menu)
17-
.add_systems(Update, (pause_menu_action, esc_key_system));
23+
// Systems to run only in the pause menu state and when app is paused
24+
.add_systems(
25+
Update,
26+
(
27+
pause_menu_action,
28+
esc_key_system,
29+
)
30+
.run_if(in_state(GameMenuState::PauseMenu).and(in_state(AppState::Paused))),
31+
)
32+
// Exit pause menu cleanup - Commented out
33+
// .add_systems(
34+
// OnExit(GameMenuState::PauseMenu),
35+
// despawn_screen::<OnPauseMenuScreen>,
36+
// );
37+
;
1838

1939
info!("Pause menu plugin registered");
2040
}

src/menu/plugin.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ use crate::{
1717
star_of_david::StarOfDavidPlugin,
1818
state::StateTransitionContext,
1919
state::{AppState, GameMenuState},
20-
state_transitions::setup_settings_transition,
2120
visibility::MenuVisibilityPlugin,
2221
},
2322
};
@@ -39,7 +38,7 @@ impl Plugin for MenuPlugin {
3938
// .insert_resource(NeedsMainMenuSetup(true))
4039
.init_resource::<UiHierarchyChecked>()
4140
// Setup state transitions
42-
.add_systems(OnEnter(GameMenuState::Settings), setup_settings_transition)
41+
// .add_systems(OnEnter(GameMenuState::Settings), setup_settings_transition)
4342
// Setup plugins
4443
.add_plugins((
4544
CleanupPlugin,

src/menu/state_transitions.rs

Lines changed: 0 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,8 @@
11
use crate::camera::components::GameCamera;
22
use crate::cards::Card;
3-
use crate::menu::settings::SettingsMenuState;
43
use crate::menu::state::{GameMenuState, StateTransitionContext};
54
use bevy::prelude::*;
65

7-
/// Set up the transition context for settings menu
8-
pub fn setup_settings_transition(
9-
mut context: ResMut<StateTransitionContext>,
10-
current_state: Res<State<GameMenuState>>,
11-
mut settings_state: ResMut<NextState<SettingsMenuState>>,
12-
settings_current: Res<State<SettingsMenuState>>,
13-
) {
14-
info!(
15-
"Setting up settings transition from state: {:?}, from_pause_menu: {}",
16-
current_state.get(),
17-
context.from_pause_menu
18-
);
19-
20-
info!("Current SettingsMenuState: {:?}", settings_current.get());
21-
22-
// Always reset from_pause_menu flag when transitioning from MainMenu
23-
if *current_state.get() == GameMenuState::MainMenu {
24-
info!("Resetting from_pause_menu flag because we're in MainMenu state");
25-
context.from_pause_menu = false;
26-
// Explicitly set the settings origin to MainMenu
27-
info!("Explicitly setting settings_origin to MainMenu");
28-
context.settings_origin = Some(GameMenuState::MainMenu);
29-
} else if context.from_pause_menu || *current_state.get() == GameMenuState::PauseMenu {
30-
// If the flag is set or we're coming from the pause menu, set the origin to PauseMenu
31-
info!("Detected transition from pause menu");
32-
context.settings_origin = Some(GameMenuState::PauseMenu);
33-
} else {
34-
// Fall back to checking the current state
35-
match current_state.get() {
36-
GameMenuState::Settings if context.settings_origin.is_none() => {
37-
// If we're already in Settings state but have no origin,
38-
// default to main menu
39-
info!("Already in Settings state with no origin, defaulting to main menu");
40-
context.settings_origin = Some(GameMenuState::MainMenu);
41-
}
42-
_ => {
43-
if context.settings_origin.is_none() {
44-
// Default to main menu if coming from an unexpected state
45-
info!("Entering settings from unexpected state, defaulting to main menu");
46-
context.settings_origin = Some(GameMenuState::MainMenu);
47-
} else {
48-
info!(
49-
"Using existing settings origin: {:?}",
50-
context.settings_origin
51-
);
52-
}
53-
}
54-
}
55-
}
56-
57-
// Only set the settings state if we're not already in Main
58-
if *settings_current.get() != SettingsMenuState::Main {
59-
info!(
60-
"Setting SettingsMenuState to Main (was {:?})",
61-
settings_current.get()
62-
);
63-
settings_state.set(SettingsMenuState::Main);
64-
} else {
65-
info!("Already in SettingsMenuState::Main, not changing state");
66-
}
67-
68-
// Log that we're about to exit this function
69-
info!("Completed settings transition setup");
70-
}
71-
726
/// Starts the game loading process
737
pub fn start_game_loading(
748
mut commands: Commands,

0 commit comments

Comments
 (0)