将脚本挂在要判断声音是否播放完毕的物体上
using System.Collections;
using UnityEngine;
using UnityEngine.Events;
[RequireComponent(typeof(AudioSource))]
public class AudioManager : MonoBehaviour
{
public static AudioManager instence = null;
private AudioSource _audio;
void Awake()
{
if (instence == null)
{
instence = this;
}
}
void Start()
{
_audio = GetComponent<AudioSource>();
}
void Update()
{
//按下键盘按钮A键执行函数播放语音
if (Input.GetKeyDown(KeyCode.A))
{
PlayAudio(GameObject.GetComponent().clip)
}
}
//接受音频文件和是否重复播放
public void PlayAudio(AudioClip clip, UnityAction callback = null, bool isLoop = false)
{
//获取自身音频文件进行播放并且不重复播放
_audio.clip = clip;
_audio.loop = isLoop;
_au