diff --git a/assets/sfx/ui/cash_heal.ogg b/assets/sfx/ui/cash_heal.ogg new file mode 100644 index 0000000..892bdbe Binary files /dev/null and b/assets/sfx/ui/cash_heal.ogg differ diff --git a/src/cash_heal.rs b/src/cash_heal.rs index b838daf..89b1935 100644 --- a/src/cash_heal.rs +++ b/src/cash_heal.rs @@ -1,4 +1,7 @@ -use crate::{abilities::TriggerCashHeal, cash::CashResource, hitpoints::Hitpoints, player::Player}; +use crate::{ + abilities::TriggerCashHeal, cash::CashResource, hitpoints::Hitpoints, player::Player, + sounds::PlaySound, +}; use bevy::prelude::*; pub fn plugin(app: &mut App) { @@ -7,6 +10,7 @@ pub fn plugin(app: &mut App) { fn on_heal_trigger( _trigger: Trigger, + mut cmds: Commands, mut cash: ResMut, mut query: Query<&mut Hitpoints, With>, ) { @@ -27,4 +31,6 @@ fn on_heal_trigger( hp.set_health(100); cash.cash = cash.cash.saturating_sub(cost); + + cmds.trigger(PlaySound::CashHeal); } diff --git a/src/loading_assets.rs b/src/loading_assets.rs index fad367b..1ebd135 100644 --- a/src/loading_assets.rs +++ b/src/loading_assets.rs @@ -24,6 +24,9 @@ pub struct AudioAssets { #[asset(path = "sfx/ui/reloaded.ogg")] pub reloaded: Handle, + #[asset(path = "sfx/ui/cash_heal.ogg")] + pub cash_heal: Handle, + #[asset(path = "sfx/abilities/throw.ogg")] pub throw: Handle, #[asset(path = "sfx/abilities/throw-explosion.ogg")] diff --git a/src/sounds.rs b/src/sounds.rs index 2927375..734b192 100644 --- a/src/sounds.rs +++ b/src/sounds.rs @@ -13,6 +13,7 @@ pub enum PlaySound { Selection, Invalid, Reloaded, + CashHeal, Backpack { open: bool }, Head(String), } @@ -48,6 +49,7 @@ fn spawn_sounds( PlaySound::ThrowHit => assets.throw_explosion.clone(), PlaySound::Reloaded => assets.reloaded.clone(), PlaySound::Invalid => assets.invalid.clone(), + PlaySound::CashHeal => assets.cash_heal.clone(), PlaySound::Backpack { open } => { if *open { assets.backpack_open.clone()