diff --git a/solitaire_engine/src/animation_plugin.rs b/solitaire_engine/src/animation_plugin.rs index 94eee73..348055f 100644 --- a/solitaire_engine/src/animation_plugin.rs +++ b/solitaire_engine/src/animation_plugin.rs @@ -11,6 +11,7 @@ use crate::auto_complete_plugin::AutoCompleteState; use crate::card_plugin::CardEntity; use crate::challenge_plugin::ChallengeAdvancedEvent; use crate::daily_challenge_plugin::{DailyChallengeCompletedEvent, DailyGoalAnnouncementEvent}; +use crate::events::NewGameConfirmEvent; use crate::events::{AchievementUnlockedEvent, GameWonEvent}; use crate::game_plugin::GameMutation; use crate::layout::LayoutResource; @@ -91,6 +92,7 @@ impl Plugin for AnimationPlugin { .add_event::() .add_event::() .add_event::() + .add_event::() .init_resource::() .add_systems(Startup, init_slide_duration) .add_systems( @@ -108,6 +110,7 @@ impl Plugin for AnimationPlugin { handle_challenge_toast, handle_settings_toast, handle_auto_complete_toast, + handle_new_game_confirm_toast, tick_toasts, ) .after(GameMutation), @@ -310,6 +313,15 @@ fn handle_auto_complete_toast( } } +fn handle_new_game_confirm_toast( + mut commands: Commands, + mut events: EventReader, +) { + for _ in events.read() { + spawn_toast(&mut commands, "Press N again to start a new game".to_string(), 3.0); + } +} + fn tick_toasts( mut commands: Commands, time: Res