Задумал я в своей игре сделать плейлист, а то скучно ездить без фоновой музыки. Думал - зайду сюда или на оффорум и сразу найду готовое решение: ведь плейлист это попсовая штука,часто встречается и наверняка есть раличные варианты скриптов для него. Но меня ждало разочарование. Не считая нескольких неполноценных ошметков кода, мне не удалось найти ничего стоящего. Разочаровавшись в потерянном времени, сел я писать свой. А потом подумал - скрипт-то многим может пригодится, и решил - пусть в инете болтается хоть один пример, как такую хню присобачить.
- Код: Выделить всё
var tracks : AudioClip[];
var songnameTime = 10;
private var played = false;
private var songname : String;
function Update(){
if (!played) // если песня не играет
{
played = true; //щелкнуть переключатель
audio.clip = tracks[Random.Range(0,tracks.Length)]; //выбрать случайную песню
audio.Play(); //воспроизвести выбранную песню
ShowName(); //показать название запущеной песни
Wait(); //ждать ее окончания
}
if (Input.GetKeyDown (KeyCode.Tab))//переключить песню нажатием клавиши Tab
{
played = false; //щелкнуть переключатель назад
audio.Stop(); //остановить песню
}
}
function Wait(){
yield WaitForSeconds (audio.clip.length * Time.timeScale); //дождаться окончания
played = false; //и щелкнуть переключатель назад
}
function ShowName(){
songname = audio.clip.name;
yield WaitForSeconds (songnameTime * Time.timeScale); //время отображения названия
songname = "";
}
function OnGUI(){
GUI.Label (Rect (10, 10, 500, 20), songname); //показываем название песни игроку
}