From d70e22678e4ad1d7223b603bbe432081556f1147 Mon Sep 17 00:00:00 2001 From: hut Date: Thu, 25 Apr 2024 03:46:17 +0200 Subject: [PATCH] add "woosh" sound effect when opening map --- README.md | 1 + assets/sounds/woosh.ogg | Bin 0 -> 7471 bytes src/audio.rs | 6 ++++++ src/camera.rs | 3 +++ 4 files changed, 10 insertions(+) create mode 100644 assets/sounds/woosh.ogg diff --git a/README.md b/README.md index 0f60c1a..8b10214 100644 --- a/README.md +++ b/README.md @@ -293,6 +293,7 @@ python -m http.server -d wasm - https://pixabay.com/sound-effects/high-energy-humming-195612 - https://pixabay.com/sound-effects/box-crash-106687 - https://pixabay.com/sound-effects/electric-fan-motor-blades-removed-13169 + - https://pixabay.com/sound-effects/whoosh-blow-flutter-shortwav-14678/ - Music: [Cinematic Cello](https://pixabay.com/music/build-up-scenes-cinematic-cello-115667) by [Aleksey Chistilin](https://pixabay.com/users/lexin_music-28841948/), [Pixabay Content License](https://pixabay.com/service/license-summary) - Star chart based on the [HYG Stellar database](https://github.com/astronexus/HYG-Database) - Font Yupiter-Regular.ttf is placed under the SIL OPEN FONT LICENSE Version 1.1 and is based on: diff --git a/assets/sounds/woosh.ogg b/assets/sounds/woosh.ogg new file mode 100644 index 0000000000000000000000000000000000000000..782799bee5447e1fc664468a551dfab11a34ab4a GIT binary patch literal 7471 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 literal 0 HcmV?d00001 diff --git a/src/audio.rs b/src/audio.rs index 4aa8a1e..69ed435 100644 --- a/src/audio.rs +++ b/src/audio.rs @@ -16,6 +16,7 @@ use crate::var; const ASSET_CLICK: &str = "sounds/click-button-140881-crop.ogg"; const ASSET_SWITCH: &str = "sounds/typosonic-typing-192811-crop.ogg"; +const ASSET_WOOSH: &str = "sounds/woosh.ogg"; const ASSET_INCOMING_MESSAGE: &str = "sounds/connect.ogg"; const ASSET_PING: &str = "sounds/connect.ogg"; const ASSET_CONNECT: &str = "sounds/connect.ogg"; @@ -44,6 +45,7 @@ pub enum Sfx { IncomingChatMessage, Click, Switch, + Woosh, Ping, Connect, EnterVehicle, @@ -62,6 +64,7 @@ pub enum Sfx { #[derive(Component)] struct SoundBGM(Handle); #[derive(Resource)] pub struct SoundClick(Handle); #[derive(Resource)] pub struct SoundSwitch(Handle); +#[derive(Resource)] pub struct SoundWoosh(Handle); #[derive(Resource)] pub struct SoundIncomingMessage(Handle); #[derive(Resource)] pub struct SoundPing(Handle); #[derive(Resource)] pub struct SoundConnect(Handle); @@ -135,6 +138,7 @@ pub fn setup( )); commands.insert_resource(SoundClick(asset_server.load(ASSET_CLICK))); commands.insert_resource(SoundSwitch(asset_server.load(ASSET_SWITCH))); + commands.insert_resource(SoundWoosh(asset_server.load(ASSET_WOOSH))); commands.insert_resource(SoundIncomingMessage(asset_server.load(ASSET_INCOMING_MESSAGE))); commands.insert_resource(SoundPing(asset_server.load(ASSET_PING))); commands.insert_resource(SoundConnect(asset_server.load(ASSET_CONNECT))); @@ -167,6 +171,7 @@ pub fn play_sfx( mut events_sfx: EventReader, sound_click: Res, sound_switch: Res, + sound_woosh: Res, sound_incoming_message: Res, sound_ping: Res, sound_connect: Res, @@ -186,6 +191,7 @@ pub fn play_sfx( source: match sfx.0 { Sfx::Switch => sound_switch.0.clone(), Sfx::Click => sound_click.0.clone(), + Sfx::Woosh => sound_woosh.0.clone(), Sfx::IncomingChatMessage => sound_incoming_message.0.clone(), Sfx::Ping => sound_ping.0.clone(), Sfx::Connect => sound_connect.0.clone(), diff --git a/src/camera.rs b/src/camera.rs index c7efcdb..6d33e18 100644 --- a/src/camera.rs +++ b/src/camera.rs @@ -291,6 +291,9 @@ pub fn handle_input( } if keyboard_input.just_pressed(settings.key_map) { settings.map_active ^= true; + if settings.map_active { + ew_sfx.send(audio::PlaySfxEvent(audio::Sfx::Woosh)); + } *mapcam = MapCam::default(); ew_updateoverlays.send(hud::UpdateOverlayVisibility); }