Привет народ! Нужна Ваша помощь.
Есть скрипт:
Код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class soundsMusic : MonoBehaviour
{
public AudioSource myMusic;
public AudioClip[] musicMassive;
public List<int> intList = new List<int>();
int randomNumber;
private AudioClip GetRandomClip()
{
intList = new List<int>(new int[musicMassive.Length]);
for (int i = 0; i < musicMassive.Length; i++)
{
randomNumber = Random.Range(0, (musicMassive.Length) + 1);
while (intList.Contains(randomNumber))
{
randomNumber = Random.Range(0, (musicMassive.Length) + 1);
}
intList[i] = randomNumber;
musicMassive[i] = musicMassive[(intList[i]) - 1];
}
return musicMassive[Random.Range(0, (intList.Count))];
}
void Update()
{
if (!myMusic.isPlaying)
{
myMusic.clip = GetRandomClip();
myMusic.Play();
}
}
}
в public List<int> intList = new List<int>(); генерируются рандомные числа (здесь всё работает). Вопрос в следующем: Как приравнять public AudioClip[] musicMassive к public List<int> intList = new List<int>();? Чтобы public AudioClip[] musicMassive приравнивал аудиотреки к рандомным числам и воспроизводил в том же порядке? Уже все варианты перепробовал. Не работает вот эта строка: musicMassive[i] = musicMassive[(intList[i]) - 1];
Все поля musicMassive[i] заполняются одним и тем же треком, хотя в public List<int> intList числа продолжают рандомно меняться.
Заранее благодарю за помощь:)