36 lines
986 B
C#
36 lines
986 B
C#
using UnityEngine;
|
|
|
|
namespace Ashwild.Audio
|
|
{
|
|
[CreateAssetMenu(fileName = "NewPlaylist", menuName = "Audio/Music Playlist")]
|
|
public class MusicPlaylist : ScriptableObject
|
|
{
|
|
[Header("Tracks")]
|
|
public AudioClip[] tracks;
|
|
|
|
[Header("Playback")]
|
|
public PlayMode playMode = PlayMode.Shuffle;
|
|
[Range(0f, 1f)] public float volume = 0.5f;
|
|
|
|
[Header("Delay Between Tracks")]
|
|
[Range(0f, 30f)] public float delayMin = 1f;
|
|
[Range(0f, 30f)] public float delayMax = 3f;
|
|
|
|
[Header("Fading")]
|
|
[Range(0f, 10f)] public float fadeInDuration = 2f;
|
|
[Range(0f, 10f)] public float fadeOutDuration = 2f;
|
|
[Range(0f, 10f)] public float crossfadeDuration = 0f;
|
|
|
|
[Header("Pitch Variation")]
|
|
[Range(0.8f, 1.2f)] public float pitchMin = 1f;
|
|
[Range(0.8f, 1.2f)] public float pitchMax = 1f;
|
|
}
|
|
|
|
public enum PlayMode
|
|
{
|
|
Sequential,
|
|
Random,
|
|
Shuffle
|
|
}
|
|
}
|