@Romanuss

Почему не работает AudioSource.PlayOneShot()?

Здравствуйте, не работает звук в функции AudioSource.PlayOneShot(). Ошибок в консоли не возникает.

Скрипт:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TNT : MonoBehaviour {

    public int damage;
    private AudioSource aS;
    public AudioClip boomAudio;
    public GameObject boomEffect;
    private HpPlayer hp;

    void Start()
    {
        hp = GameObject.FindGameObjectWithTag("Player").GetComponent<HpPlayer>();
        aS = GetComponent<AudioSource>();
    }

    void OnTriggerEnter2D(Collider2D col)
    {
        aS.PlayOneShot(boomAudio); //не работает функция
        gameObject.SetActive(false);
        GameObject ps = Instantiate(boomEffect, transform.position, Quaternion.identity);
        Destroy(ps, 1);

        if (col.CompareTag("Player"))
            hp.health -= damage;
    } 
}


Скрин инспектора:

5c50311b1cb0a101523059.jpeg
  • Вопрос задан
  • 889 просмотров
Решения вопроса 1
MrMureno
@MrMureno Куратор тега Unity
VR for all
у вас следующей строкой же
gameObject.SetActive(false);

вы выключаете объект с которого вызвали..
PlayOneShot - создает копию конечно для прогона, но она связанна с родителем.
нельзя "выкинуть магнитофон" и спрашивать..где же звук)))
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы