From 1d74f3204692bb69aabf3c57fbdf4601a31a311f Mon Sep 17 00:00:00 2001 From: miepzerino <o.skotnik@gmail.com> Date: Sat, 16 Dec 2023 18:32:11 +0000 Subject: [PATCH] Added audio manager + sound effects --- Assets/Scripts/Damageable.cs | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/Assets/Scripts/Damageable.cs b/Assets/Scripts/Damageable.cs index b738468..09fa72f 100644 --- a/Assets/Scripts/Damageable.cs +++ b/Assets/Scripts/Damageable.cs @@ -5,9 +5,11 @@ public class Damageable : MonoBehaviour { +#if (UNITY_EDITOR) // ONLY FOR DEBUG USE [SerializeField] private bool selfDamage = false; +#endif Animator animator; [SerializeField] @@ -20,6 +22,10 @@ private bool isInvincible = false; private float timeSinceHit = 0f; public float invincibilityTime = 0.25f; + + public AudioClip hitSound; + public AudioClip healSound; + public AudioClip deathSound; public int MaxHealth { @@ -42,6 +48,10 @@ if (value <= 0) { IsAlive = false; + if (deathSound != null) + { + SoundManager.instance.PlaySoundAtPoint(gameObject, deathSound.name); + } } } } @@ -74,10 +84,12 @@ timeSinceHit += Time.deltaTime; } } +#if (UNITY_EDITOR) if (selfDamage) { Hit(10); } +#endif } public void Hit(int damage) @@ -89,6 +101,10 @@ isInvincible = true; CharacterEvents.characterDamaged.Invoke(gameObject, actualDamageAmount); + if (hitSound != null) + { + SoundManager.instance.PlaySoundAtPoint(gameObject, hitSound.name); + } } } @@ -103,6 +119,10 @@ CharacterEvents.characterHealed.Invoke(gameObject, actualHealAmount); result = true; + if (healSound != null) + { + SoundManager.instance.PlaySoundAtPoint(gameObject, healSound.name); + } } return result; -- Gitblit v1.9.3