Files
2026-10-27 21:43:24 +03:00

35 lines
1017 B
C#

using UnityEngine;
[RequireComponent(typeof(AudioSource))]
public class SoundManager : MonoBehaviour
{
public static SoundManager Instance { get; private set; }
[Header("Audio Clips")]
public AudioClip cardDrawClip;
public AudioClip cardDropClip;
public AudioClip cardFlipClip;
public AudioClip winClip;
public AudioClip loseClip;
private AudioSource _audioSource;
private void Awake()
{
Instance = this;
_audioSource = GetComponent<AudioSource>();
}
public void PlayDraw() => PlayClip(cardDrawClip, 1.0f);
public void PlayDrop() => PlayClip(cardDropClip, 0.95f);
public void PlayFlip() => PlayClip(cardFlipClip, 1.1f);
public void PlayWin() => PlayClip(winClip, 1.0f);
public void PlayLose() => PlayClip(loseClip, 0.85f);
private void PlayClip(AudioClip clip, float pitch)
{
if (clip == null) return;
_audioSource.pitch = pitch + Random.Range(-0.05f, 0.05f);
_audioSource.PlayOneShot(clip);
}
}