When script plays an audioclip when the timer runs out, however it keeps playing the sound endlessly on every frame and it sounds bad and makes the game lag. I have the audio’s loop value set to false. Does anybody know how to fix this?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class audioTimer : MonoBehaviour
{
bool okayToPlayAudio;
public float timeLeft = 10f; //time in seconds
public AudioSource theaterVoice;
public AudioClip audioClip;
public void Update()
{
if (timeLeft > 0.0)
{
timeLeft -= Time.deltaTime;
}
else
{
okayToPlayAudio = true;
}
if(okayToPlayAudio)
{
theaterVoice.PlayOneShot(audioClip, 1.0f);
okayToPlayAudio = false;
}
}