Question by
VilleRMD · Oct 07, 2017 at 06:34 AM ·
audiorandomization
How do I convert this script to play random sould clips between X and Y seconds?
using UnityEngine; using System.Collections; using UnityEngine.Audio;
public class Random_container : MonoBehaviour
{ public AudioClip[] clips; public AudioMixerGroup output;
public float minPitch = 0.95f;
public float maxPitch = 1.05f;
public float spatialBlend = 1;
public float maxdistance = 50;
public float minTimeRnd = 0.5f;
public float maxTimeRnd = 1.5f;
// initialization
void Start()
{
}
void Update()
{
if (Input.GetKeyDown("space"))
{
PlaySound();
}
}
void PlaySound()
{
int randomClip = Random.Range(0, clips.Length);
AudioSource source = gameObject.AddComponent<AudioSource>();
source.clip = clips[randomClip];
source.pitch = Random.Range(minPitch, maxPitch);
source.spatialBlend = spatialBlend;
source.maxDistance = maxdistance;
source.outputAudioMixerGroup = output;
// source.playOnAwake = true;
source.Play();
Destroy(source, clips[randomClip].length);
}
}
Comment