private void ApplyConfigToSource()
 {
     if (config != null)
     {
         config.ApplyToSource(GetComponent <AudioSource>());
     }
 }
Пример #2
0
        /// <summary>
        /// Instructs the AudioSource to play a single clip, with optional looping, in a position in 3D space.
        /// </summary>
        public void PlayAudioClip(AudioClip clip, AudioConfigurationSO config, bool loop, Vector3 position = default)
        {
            transform.position = position;

            config.ApplyToSource(source);

            source.clip = clip;
            source.loop = loop;
            source.Play();

            if (!loop)
            {
                StartCoroutine(WaitForAudioFinish(clip.length));
            }
        }