为什么这样写代码会让游戏音效设置失败?

冷西瓜 2017-08-06 10:20:38
我的代码起始是这样的:

AudioSource source; //音频源
public AudioClip eat_food; //吃到食物播放音频
public AudioClip eat_boom; //吃到炸弹播放音频
public AudioClip eat_portal; //吃到传送门播放音频
public AudioClip die; //死亡音频

然后触发音效是这样写的:

void OnTriggerEnter2D(Collider2D coll)
{
if (coll.tag.Equals("food"))
{
ate = true;
Debug.Log("吃到食物");
Destroy(coll.gameObject);
source.PlayOneShot(eat_food);
}
}

但是却出现了这样的错误:


百思不得其解,求助各位大佬!
...全文
295 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
calss_cyl 2017-08-07
  • 打赏
  • 举报
回复
你把GameObject都删除了,还想播放他身上挂在的AudioSource ? 貌似逻辑上也有问题吧。
冷西瓜 2017-08-06
  • 打赏
  • 举报
回复
我知道了,是因为我没有获取音频源!

source = this.gameObject.GetComponent<AudioSource>(); //获取音频源

2,539

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧