using UnityEngine; using UnityEngine.Audio; using System; public class AudioManager : MonoBehaviour { public Sound[] sounds; public static AudioManager instance; public string Theme; // Start is called before the first frame update void Awake() { if (instance == null) instance = this; else { Destroy(gameObject); return; } DontDestroyOnLoad(gameObject); foreach (Sound s in sounds) { s.source = gameObject.AddComponent (); s.source.clip = s.clip; s.source.volume = s.volume; s.source.pitch = s.pitch; s.source.loop = s.loop; } } void Start() { Play(Theme); } public void Play(string name) { Sound s = Array.Find(sounds, sound => sound.name == name); if (s == null) { Debug.LogWarning("Sound: " + name + " not found!"); return; } s.source.Play(); } }