Exemple #1
0
        public static Clip GetClip(ClipSettings input)
        {
            AudioDB adb = ScriptableObject.CreateInstance <AudioDB>();

            adb = (AudioDB)Resources.Load <AudioDB>("AudioDB");
            List <Clip> source;

            if (input is SoundClip)
            {
                source = adb.sound;
            }
            else if (input is AmbientClip)
            {
                source = adb.ambient;
            }
            else if (input is MusicClip)
            {
                source = adb.music;
            }
            else
            {
                return(null);
            }
            foreach (Clip item in source)
            {
                if (input.name == item.name)
                {
                    return(item);
                }
            }
            Debug.LogWarning("Specified clip not found.");
            return(null);
        }
Exemple #2
0
        public AudioSource NewAudioSource(ClipSettings clip)
        {
            GameObject  player = new GameObject();
            AudioSource ads    = player.AddComponent <AudioSource>();
            Clip        ac     = AudioDB.GetClip(clip);

            ads.clip        = ac.GetClip();
            player.name     = ac.name;
            ads.rolloffMode = AudioRolloffMode.Linear;
            player.transform.localPosition = Vector3.zero;
            ads.spatialBlend = 0;
            ads.pitch        = clip.pitch;
            ads.playOnAwake  = false;
            ads.transform.SetParent(transform);
            return(ads);
        }