3
respostas

Todos os áudios funcionam menos o da morte do Zumbi

ERRO:

PlayOneShot was called with a null AudioClip.
UnityEngine.AudioSource:PlayOneShot(AudioClip)
Bala:OnTriggerEnter(Collider) (at Assets/Scripts/Bala.cs:28)

Script audio:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ControlaAudio : MonoBehaviour
{
  private AudioSource meuAudioSource;
  public static AudioSource instancia;

  void Awake ()
  {
      meuAudioSource = GetComponent<AudioSource>();
      instancia = meuAudioSource;
  }
}

Script BALA:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Bala : MonoBehaviour {

    public float Velocidade = 20;
    private Rigidbody rigidbodyBala;
    public AudioClip MorteZumbi;

    private void Start()
    {
        rigidbodyBala = GetComponent<Rigidbody>();
    }

    // Update is called once per frame
    void FixedUpdate () {
        rigidbodyBala.MovePosition
            (rigidbodyBala.position + 
            transform.forward * Velocidade * Time.deltaTime);
    }

    void OnTriggerEnter(Collider objetoDeColisao)
    {
        if(objetoDeColisao.tag == "Inimigo")
        {
            Destroy(objetoDeColisao.gameObject);
            ControlaAudio.instancia.PlayOneShot(MorteZumbi);
        }

        Destroy(gameObject);
    }
}
3 respostas

Verificou na engine se você instanciou o som que deve ser tocado? Caso não tenha posto, o valor será nulo, porque não tem o que ser "chamado" com a função de tocar o audio...

Pior que coloquei sim, no prefab bala - script bala MorteZumbi o arquivo de audio, e ja testei com outros arquivos e o problema permanece, todos os outros audios inseridos anteriormente funcionam normal, assim que atinjo o zumbi aparece o erro que coloquei acima

Eu fiz o teste com teu script da bala (onde apresentava o erro na linha 28), mas funcionou normalmente. Instanciei o áudio no prefab da bala, e deu tudo certo aqui.