From a96bff59673ebae623374018d343b0993a9043da Mon Sep 17 00:00:00 2001 From: Jens Pitkanen Date: Mon, 20 Apr 2020 21:46:48 +0300 Subject: [PATCH] Add ambient sound system --- Assets/Prefabs/Player/Ambient Sound.prefab | 143 ++++++++++++++++++ .../Prefabs/Player/Ambient Sound.prefab.meta | 7 + Assets/Prefabs/Player/Player.prefab | 24 +++ Assets/Scripts/AmbientSoundGenerator.cs | 56 +++++++ Assets/Scripts/AmbientSoundGenerator.cs.meta | 11 ++ Assets/Scripts/ItemGrabber.cs | 9 +- Assets/Scripts/SelfDestructAfterPlaying.cs | 16 ++ .../Scripts/SelfDestructAfterPlaying.cs.meta | 11 ++ Assets/Sounds/Ambient.meta | 8 + Assets/Sounds/Ambient/Owl01.ogg | Bin 0 -> 41351 bytes Assets/Sounds/Ambient/Owl01.ogg.meta | 22 +++ 11 files changed, 304 insertions(+), 3 deletions(-) create mode 100644 Assets/Prefabs/Player/Ambient Sound.prefab create mode 100644 Assets/Prefabs/Player/Ambient Sound.prefab.meta create mode 100644 Assets/Scripts/AmbientSoundGenerator.cs create mode 100644 Assets/Scripts/AmbientSoundGenerator.cs.meta create mode 100644 Assets/Scripts/SelfDestructAfterPlaying.cs create mode 100644 Assets/Scripts/SelfDestructAfterPlaying.cs.meta create mode 100644 Assets/Sounds/Ambient.meta create mode 100644 Assets/Sounds/Ambient/Owl01.ogg create mode 100644 Assets/Sounds/Ambient/Owl01.ogg.meta diff --git a/Assets/Prefabs/Player/Ambient Sound.prefab b/Assets/Prefabs/Player/Ambient Sound.prefab new file mode 100644 index 0000000..99e0898 --- /dev/null +++ b/Assets/Prefabs/Player/Ambient Sound.prefab @@ -0,0 +1,143 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5362017482645399226 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6620256556670932985} + - component: {fileID: 8570857400429686574} + - component: {fileID: 4367637972437939355} + m_Layer: 0 + m_Name: Ambient Sound + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6620256556670932985 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5362017482645399226} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8570857400429686574 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5362017482645399226} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 60f36e8849a468f45beadd2d5d390309, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!82 &4367637972437939355 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5362017482645399226} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: -8678847571685279384, guid: 032de345950918c4e89684078c6a7213, + type: 2} + m_audioClip: {fileID: 0} + m_PlayOnAwake: 0 + m_Volume: 1 + m_Pitch: 1 + Loop: 0 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 diff --git a/Assets/Prefabs/Player/Ambient Sound.prefab.meta b/Assets/Prefabs/Player/Ambient Sound.prefab.meta new file mode 100644 index 0000000..add350c --- /dev/null +++ b/Assets/Prefabs/Player/Ambient Sound.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2b1540a91810a824f95d38d8a1dce667 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Player/Player.prefab b/Assets/Prefabs/Player/Player.prefab index eb6291c..b26c852 100644 --- a/Assets/Prefabs/Player/Player.prefab +++ b/Assets/Prefabs/Player/Player.prefab @@ -851,6 +851,7 @@ GameObject: - component: {fileID: 7093134810128755097} - component: {fileID: 462937706053753531} - component: {fileID: 8702400494665140028} + - component: {fileID: 1070985534702310852} m_Layer: 11 m_Name: Player m_TagString: Player @@ -1042,6 +1043,29 @@ MonoBehaviour: m_EditorClassIdentifier: Loraces: [] ChunkKeepAliveTransformsParent: {fileID: 3141763353809520921} +--- !u!114 &1070985534702310852 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6125707630481988399} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 799107a14d3c0d5499f9fa1df5ddd71c, type: 3} + m_Name: + m_EditorClassIdentifier: + AmbientSfxPrefab: {fileID: 5362017482645399226, guid: 2b1540a91810a824f95d38d8a1dce667, + type: 3} + MinDistance: 4 + MaxDistance: 15 + Clips: + - {fileID: 8300000, guid: abcd384e5671295429f1f9e38f53c67d, type: 3} + MinCooldown: 1 + MaxCooldown: 8 + TooManySoundsCount: 4 + TrackingDuration: 14 + AmbientNoiseCooldown: 0 --- !u!1 &6215241420411417389 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/AmbientSoundGenerator.cs b/Assets/Scripts/AmbientSoundGenerator.cs new file mode 100644 index 0000000..98d31e8 --- /dev/null +++ b/Assets/Scripts/AmbientSoundGenerator.cs @@ -0,0 +1,56 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class AmbientSoundGenerator : MonoBehaviour { + public GameObject AmbientSfxPrefab; + public float MinDistance; + public float MaxDistance; + public AudioClip[] Clips; + + [Header("Cooldown configuration")] + public float MinCooldown; + public float MaxCooldown; + public int TooManySoundsCount; + [Tooltip("")] + public float TrackingDuration; + + [Header("Runtime values")] + public float AmbientNoiseCooldown = 0f; + + private Transform World; + private List SoundTimes = new List(); + + private void Awake() { + World = GameObject.FindGameObjectWithTag("World").transform; + } + + private void Update() { + AmbientNoiseCooldown -= Time.deltaTime; + if (AmbientNoiseCooldown <= 0) { + AmbientNoiseCooldown += Random.Range(MinCooldown, MaxCooldown) + TrackingDuration * Mathf.Pow(SoundTimes.Count / TooManySoundsCount, 2); + + int RemoveUntil = -1; + for (int I = 0; I < SoundTimes.Count; I++) { + if (Time.time - SoundTimes[I] > TrackingDuration) { + RemoveUntil = I; + } else { + break; + } + } + SoundTimes.RemoveRange(0, RemoveUntil + 1); + SoundTimes.Add(Time.time); + + float Distance = Random.Range(MinDistance, MaxDistance); + float Rads = Random.Range(0, 2 * Mathf.PI); + Vector3 Offset = new Vector3(Mathf.Cos(Rads) * Distance, Random.Range(0f, 5f), Mathf.Sin(Rads) * Distance); + GameObject Obj = Instantiate(AmbientSfxPrefab, transform.position + Offset, new Quaternion(), World); + AudioSource Sfx = Obj.GetComponent(); + if (Sfx != null) { + Sfx.clip = Clips[Random.Range(0, Clips.Length)]; + Sfx.volume = Mathf.Sqrt(Random.Range(0.3f, 1f)); + Sfx.Play(); + } + } + } +} diff --git a/Assets/Scripts/AmbientSoundGenerator.cs.meta b/Assets/Scripts/AmbientSoundGenerator.cs.meta new file mode 100644 index 0000000..657854b --- /dev/null +++ b/Assets/Scripts/AmbientSoundGenerator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 799107a14d3c0d5499f9fa1df5ddd71c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ItemGrabber.cs b/Assets/Scripts/ItemGrabber.cs index 4f3138d..5d27302 100644 --- a/Assets/Scripts/ItemGrabber.cs +++ b/Assets/Scripts/ItemGrabber.cs @@ -112,14 +112,17 @@ public class ItemGrabber : MonoBehaviour { } } - PrimaryIndicator.alpha = Mathf.Lerp(PrimaryIndicator.alpha, Item != null || Campfire != null ? 1 : 0, 10f * Time.deltaTime); - if (Campfire != null && GrabbedItems.Count > 0) { - PrimaryText.text = $"Burn {GrabbedItems[0].Quality.DisplayName}"; + PrimaryIndicator.alpha = Mathf.Lerp(PrimaryIndicator.alpha, + Item != null || Campfire != null || ThrowableItem != null ? 1 : 0, + 10f * Time.deltaTime); + if (Campfire != null && ThrowableItem != null) { + PrimaryText.text = $"Burn {ThrowableItem.Quality.DisplayName}"; } else if (Item != null) { PrimaryText.text = $"Take {Item.Quality.DisplayName}"; } else if (ThrowableItem != null) { PrimaryText.text = $"Throw {ThrowableItem.Quality.DisplayName}"; } + SecondaryIndicator.alpha = Mathf.Lerp(SecondaryIndicator.alpha, CanIgniteTorch ? 1 : 0, 10f * Time.deltaTime); if (CanIgniteTorch) { SecondaryText.text = $"Ignite {TorchableItem.Quality.DisplayName}"; diff --git a/Assets/Scripts/SelfDestructAfterPlaying.cs b/Assets/Scripts/SelfDestructAfterPlaying.cs new file mode 100644 index 0000000..5e7f517 --- /dev/null +++ b/Assets/Scripts/SelfDestructAfterPlaying.cs @@ -0,0 +1,16 @@ +using UnityEngine; + +[RequireComponent(typeof(AudioSource))] +public class SelfDestructAfterPlaying : MonoBehaviour { + private AudioSource Source; + + private void Awake() { + Source = GetComponent(); + } + + private void LateUpdate() { + if (!Source.isPlaying) { + Destroy(gameObject); + } + } +} diff --git a/Assets/Scripts/SelfDestructAfterPlaying.cs.meta b/Assets/Scripts/SelfDestructAfterPlaying.cs.meta new file mode 100644 index 0000000..7411bbc --- /dev/null +++ b/Assets/Scripts/SelfDestructAfterPlaying.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 60f36e8849a468f45beadd2d5d390309 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sounds/Ambient.meta b/Assets/Sounds/Ambient.meta new file mode 100644 index 0000000..c1ce538 --- /dev/null +++ b/Assets/Sounds/Ambient.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e8f766bf7981754c85f5a1afb7365bb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sounds/Ambient/Owl01.ogg b/Assets/Sounds/Ambient/Owl01.ogg new file mode 100644 index 0000000000000000000000000000000000000000..729a6584789f471760f6305705c8818cc720a9a9 GIT binary patch literal 41351 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