32 lines
931 B
C#

using RR.Common.Managers;
using RR.Game2D.Core.Managers;
using UnityEngine;
namespace RR.Common.Controllers
{
public class MusicController : MonoBehaviour
{
[SerializeField] private AudioManager audioManager;
[SerializeField] private AudioClip musicClip;
[SerializeField] private float musicVolume = -1f;
[SerializeField] private bool loop = true;
[SerializeField] private bool useCrossfade = false;
[SerializeField] private float fadeDuration = -1f;
private void Start()
{
if (audioManager == null) audioManager = GameManager.Instance.Audio;
if (!musicClip) return;
if (useCrossfade)
audioManager.CrossfadeMusic(musicClip, fadeDuration, loop, musicVolume);
else
audioManager.PlayMusicImmediate(musicClip, loop, musicVolume);
}
}
}