public void PlaySFX3D(AudioKeys key, Vector3 soundPosition, float volume = 1, float pitch = 1, float spatialBlend = 1) { GameObject temp3DAudioGameObject = new GameObject(); temp3DAudioGameObject.name = audioClips[key].name + "_Audio"; AudioSource tempAudioSource = temp3DAudioGameObject.AddComponent <AudioSource>(); tempAudioSource.transform.position = soundPosition; tempAudioSource.clip = audioClips[key]; float audioClipLenght = audioClips[key].length; audioSource.spatialBlend = spatialBlend; audioSource.pitch = pitch; audioSource.PlayOneShot(audioClips[key], volume); StartCoroutine(DestroySoundGameObject(temp3DAudioGameObject, audioClipLenght + 0.1f)); }
public void PlaySFX2D(AudioKeys key, float volume = 1, float pitch = 1) { audioSource.spatialBlend = 0; audioSource.pitch = pitch; audioSource.PlayOneShot(audioClips[key], volume); }