diff --git a/src/features/phase/mod.rs b/src/features/phase/mod.rs index d730262..baf6397 100644 --- a/src/features/phase/mod.rs +++ b/src/features/phase/mod.rs @@ -135,6 +135,7 @@ fn grant_focus_rewards( berries as i32, ); session_tracker.total_berries_earned += berries; + session_tracker.completed_focus_phases += 1; let berries_name = match berries { 1 => ItemType::Berry.singular(&game_config), @@ -179,14 +180,12 @@ fn handle_pause( /// Transitions to the next phase based on current state. pub fn next_phase( current_phase: &mut CurrentPhase, - session_tracker: &mut SessionTracker, + session_tracker: &SessionTracker, settings: &TimerSettings, ) { if let Phase::Finished { completed_phase } = ¤t_phase.0 { match **completed_phase { Phase::Focus { .. } => { - session_tracker.completed_focus_phases += 1; - let is_long_break = session_tracker.completed_focus_phases > 0 && session_tracker.completed_focus_phases % settings.long_break_interval == 0; @@ -214,7 +213,7 @@ pub fn next_phase( pub fn handle_continue( mut messages: MessageReader, mut phase_res: ResMut, - mut session_tracker: ResMut, + session_tracker: Res, settings: Res, mut tile_query: Query<&mut TileState>, game_config: Res, @@ -226,7 +225,7 @@ pub fn handle_continue( false }; - next_phase(&mut phase_res, &mut session_tracker, &settings); + next_phase(&mut phase_res, &session_tracker, &settings); if entering_break { println!("Growing crops and resetting watered state.");