using System.Collections; using UnityEngine; namespace GatherAndDefend { [CreateAssetMenu(fileName = "Audio", menuName = "AudioTemplate")] public class AudioTemplate : ScriptableObject { [Header("Text")] public new string name; [Header("Sound Data")] [Tooltip("Sound variations if many.")] public AudioClip[] clips; public float volume = 1f; [Tooltip("Max Random pitch change.")] public float maxRandomPitchChange = 0.02f; [Tooltip("Max Random volume reduce in percentage. (0.0 to 1.0)")] public float maxRandomVolumeReducedPercentage = 0.4f; public AudioClip GetRandomClip() { return clips[Random.Range(0, clips.Length)]; } public float GetRandomPitch() { return 1f + Random.Range(-maxRandomPitchChange, maxRandomPitchChange); } public float GetVolumeToUse() { return volume * (1f - Random.Range(0, maxRandomVolumeReducedPercentage)); } } }