Скрипт случайной музыки
This commit is contained in:
32
Assets/RandomMusicSelectScript.cs
Normal file
32
Assets/RandomMusicSelectScript.cs
Normal file
@ -0,0 +1,32 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
[RequireComponent(typeof(AudioSource))]
|
||||
public class RandomMusicSelectScript : MonoBehaviour
|
||||
{
|
||||
[SerializeField] List<AudioClip> _MusicClipList;
|
||||
|
||||
private AudioSource _Audio;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
_Audio = GetComponent<AudioSource>();
|
||||
_Audio.clip = GetRandomObject<AudioClip>(_MusicClipList);
|
||||
_Audio.Play();
|
||||
}
|
||||
|
||||
T GetRandomObject<T>(List<T> list)
|
||||
{
|
||||
// проверка на пустоту списка
|
||||
if (list == null || list.Count == 0)
|
||||
{
|
||||
return default;
|
||||
}
|
||||
|
||||
// Генерация случайного индекса
|
||||
int randomIndex = UnityEngine.Random.Range(0, list.Count);
|
||||
return list[randomIndex];
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user