diff --git a/.gitignore b/.gitignore index c8cc50d..17d131c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /target .cargo +/web diff --git a/assets/sounds/end_goffy.ogg b/assets/sounds/end_goffy.ogg new file mode 100644 index 0000000..433c44b Binary files /dev/null and b/assets/sounds/end_goffy.ogg differ diff --git a/src/core/game_state.rs b/src/core/game_state.rs index 4b44747..c980c48 100644 --- a/src/core/game_state.rs +++ b/src/core/game_state.rs @@ -1,8 +1,12 @@ use bevy::{ecs::system::SystemParam, prelude::*}; +use bevy_kira_audio::prelude::*; -use crate::core::{ - kirby::Kirby, - wave::{BubbleWaves, EnnemyWaveLock}, +use crate::{ + core::{ + kirby::Kirby, + wave::{BubbleWaves, EnnemyWaveLock}, + }, + juice::sound::{Background, Poyoo}, }; #[derive(Event)] @@ -69,12 +73,21 @@ fn on_reset_world( #[derive(Event)] struct ResetWorldEvent; -fn on_end_game(event: On, mut commands: Commands) { +fn on_end_game( + event: On, + mut commands: Commands, + background_audio: Res>, + poyo_audio: Res>, + asset_server: Res, +) { let reason = event.reason; println!("end game reason {:?}", reason); if reason == EndGameReason::Victory { - panic!("You win! But you panic still"); + background_audio.stop(); + poyo_audio.play(asset_server.load("sounds/kirby-poyo.ogg")); + background_audio.play(asset_server.load("sounds/end_goffy.ogg")); + return; } commands.trigger(ResetWorldEvent); } diff --git a/src/core/wave.rs b/src/core/wave.rs index b524932..7f167e3 100644 --- a/src/core/wave.rs +++ b/src/core/wave.rs @@ -89,8 +89,8 @@ fn get_bubble_waves() -> BubbleWaves { ], vec![ BubbleSplash::new(NORMAL_BUBBLE, RIGHT - UP_DIR * 20.0, 100.0, 200), - BubbleSplash::new(RED_BUBBLE, RIGHT + UP_DIR * 20.0, 100.0, 100), - BubbleSplash::new(RED_BUBBLE, LEFT, 100.0, 100), + BubbleSplash::new(RED_BUBBLE, RIGHT + TOP, 100.0, 100), + BubbleSplash::new(RED_BUBBLE, LEFT + TOP, 100.0, 100), ], vec![ BubbleSplash::new(NORMAL_BUBBLE, RIGHT, 100.0, 200),