How to have sound effects overlap?

So I’m still kinda new to C# but I’m making a simple asteroid game and I’m trying to have it so when an asteroid explodes, the sound effect doesn’t abruptly cut off before another asteroid gets hit. I was looking around and I saw that PlayOneShot(); would have worked for overlapping sounds but it’s somehow not in my case.

Any help would be greatly appreciated! Thank you very much in advance :slight_smile:

Here’s the code for my involved scripts:
(Audio Manager)

using UnityEngine.Audio;
using UnityEngine;
using System;

public class AudioManager : MonoBehaviour
{
    public Sounds[] sounds;

    void Awake()
    {
        foreach (Sounds s in sounds)
        {
            s.source = gameObject.AddComponent<AudioSource>();
            s.source.clip = s.clip;

            s.source.volume = s.volume;
            s.source.pitch = s.pitch;
        }
    }

    public void Play(string name)
    {
        Sounds s = Array.Find(sounds, sound => sound.name == name);
        s.source.Play();
    }

    public void PlayOne(string name)
    {
        Sounds s = Array.Find(sounds, sound => sound.name == name);
        s.source.PlayOneShot();  // ERROR HERE. Says 'No overload method for PlayOneShot' takes 0 arguments
    }

(Game Manager)

public class GameManager : MonoBehaviour
{
   //Relevant function 
    public void asteroidDestroyed(Asteroid asteroid)
    {
        FindObjectOfType<AudioManager>().PlayOneShot("Rock Explosion"); // And this is what I'm trying to call in from the Audio manager script

        this.explosionEffect.transform.position = asteroid.transform.position;
        this.explosionEffect.Play();
    }

PlayOneShot requires at least one parameter with a second optional. AudioSource.PlayOneShot

try
s.source.PlayOneShot(audioClip);

where audioClip is what audio clip you want to play.