diff --git a/assets/audio/monster_growl.ogg b/assets/audio/monster_growl.ogg new file mode 100644 index 0000000..7aaece8 Binary files /dev/null and b/assets/audio/monster_growl.ogg differ diff --git a/assets/main.assets.ron b/assets/main.assets.ron index 3d50a9a..d60b5e3 100644 --- a/assets/main.assets.ron +++ b/assets/main.assets.ron @@ -3,6 +3,7 @@ "flash_hold_4": File (path: "images/pixelart/Flashlight_hold_4.png"), "flash_hold_4_pressed": File (path: "images/pixelart/Flashlight_click_4.png"), "monster_footsteps": File (path: "audio/monster-footsteps.ogg"), + "monster_growl": File (path: "audio/monster_growl.ogg"), "theme": File (path: "audio/untitled.ogg"), "house": File (path: "meshes/House.glb"), "library": Folder ( diff --git a/src/asset_loading/mod.rs b/src/asset_loading/mod.rs index 75be147..5352da0 100644 --- a/src/asset_loading/mod.rs +++ b/src/asset_loading/mod.rs @@ -32,6 +32,8 @@ pub(crate) struct AudioAssets { pub(crate) flash_click: Handle, #[asset(key = "monster_footsteps")] pub(crate) monster_footsteps: Handle, + #[asset(key = "monster_growl")] + pub(crate) monster_growl: Handle, #[asset(key = "theme")] pub(crate) theme_song: Handle, } diff --git a/src/monster.rs b/src/monster.rs index 00c130b..21f20ff 100644 --- a/src/monster.rs +++ b/src/monster.rs @@ -315,7 +315,7 @@ fn play_monster_sounds( } play_footstep_segment( - audio, + &audio, &audio_assets, distance, &monster.state, @@ -324,14 +324,17 @@ fn play_monster_sounds( ); if monster.state == MonsterState::Hunting && rand.random_bool(0.3) { - println!("Monster growl!"); + audio.play(audio_assets.monster_growl.clone()) + .with_volume(0.8 as f64) + .fade_in(AudioTween::linear(Duration::from_millis(100))) + .handle(); } } } } fn play_footstep_segment( - audio: Res