AudioSource 在分配新剪辑后继续播放旧剪辑

AudioSource continues playing old clip after new clip assigned

我的游戏正在播放背景音乐,我想根据游戏属性进行切换。 这是我的解决方案:

AudioSource audioSource;
[SerializeField] AudioClip audioClipLowZombies;
[SerializeField] AudioClip audioClipMediumZombies;
[SerializeField] AudioClip audioClipHighZombies;
AudioClip currentMusic;

public void ChangeAudio()
{
    if (zombieCount < 10)
    {
        audioSource.Stop();
        audioSource.clip = audioClipLowZombies;
        audioSource.Play();
    }

    if (zombieCount > 10 & zombieCount < 20)
    {
        audioSource.Stop();
        audioSource.clip = audioClipMediumZombies;
        audioSource.Play();
    }

    if (zombieCount > 20)
    {
        audioSource.Stop();
        audioSource.clip = audioClipHighZombies;
        audioSource.Play();
    }
}

问题是更换剪辑后,旧剪辑和新剪辑一样继续播放。

确保(如果您有多个音频源)您引用的是正确的音频源。遗憾的是,这就是我真正能想到的,因为你的代码看起来不错。