我尝试做一个靠近物体激活image并播放音频,远离物体失活image停止音频的功能,同时我的场景中有一个挂在camera上的bgm一直在放
audiomanager(空物体)上也有一个audiosource
如果我这样写的话会导致莫名其妙的靠近关闭远离开始播放音频
以及远离时在unity其他界面点击时偶尔会播放audiomanager所指的音频
//uimanager.cs
void Update()
{
//简介板
// 计算玩家与物体之间的距离
float distanceToPlayer = Vector3.Distance(简介板.transform.position, player.position);
// 如果玩家接近物体并且image当前处于失活状态,则激活image
if (distanceToPlayer < distance)
{
简介板.SetActive(true);
isprint = true;
audioManager.PlayAudio(0);
}
// 如果玩家远离物体并且image当前处于激活状态,则失活image
else if (distanceToPlayer >= distance)
{
简介板.SetActive(false);
isprint = false;
}
//audiomanager.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AudioManager : MonoBehaviour
{
public List<AudioClip> audioClips = new List<AudioClip>();
public AudioSource audioSource;
void Start()
{
audioSource = GetComponent<AudioSource>();
}
public void PlayAudio(int theNumberOfTheClipGroup)
{
audioSource.clip = audioClips[theNumberOfTheClipGroup];
audioSource.Play();
}
}
)