53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
|
|||
|
|
public class SoundManager : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
public static SoundManager instance;
|
|||
|
|
|
|||
|
|
[Header("Audio Sources")]
|
|||
|
|
[SerializeField] private AudioSource bgmSource;
|
|||
|
|
[SerializeField] private AudioSource sfxSource;
|
|||
|
|
[SerializeField] private AudioSource footstepSource;
|
|||
|
|
|
|||
|
|
PlayerController playerController;
|
|||
|
|
|
|||
|
|
void Awake()
|
|||
|
|
{
|
|||
|
|
if (instance == null) instance = this;
|
|||
|
|
else Destroy(gameObject);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD>
|
|||
|
|
public void PlayBGM(AudioClip clip)
|
|||
|
|
{
|
|||
|
|
bgmSource.clip = clip;
|
|||
|
|
bgmSource.loop = true;
|
|||
|
|
bgmSource.Play();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// ȿ<><C8BF><EFBFBD><EFBFBD> <20><> <20><> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> <20><> <20><>ġ<EFBFBD><C4A1> <20><><EFBFBD><EFBFBD>)
|
|||
|
|
public void PlaySFX(AudioClip clip)
|
|||
|
|
{
|
|||
|
|
sfxSource.PlayOneShot(clip);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void PlayFootstep(AudioClip clip)
|
|||
|
|
{
|
|||
|
|
// <20>̹<EFBFBD> <20>ȴ<EFBFBD> <20>Ҹ<EFBFBD><D2B8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>̰<EFBFBD>, <20><><EFBFBD><EFBFBD> Ŭ<><C5AC><EFBFBD>̶<EFBFBD><CCB6><EFBFBD> <20>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>)
|
|||
|
|
if (footstepSource.isPlaying && footstepSource.clip == clip) return;
|
|||
|
|
|
|||
|
|
footstepSource.clip = clip;
|
|||
|
|
footstepSource.loop = true; // <20>ȴ<EFBFBD> <20>Ҹ<EFBFBD><D2B8><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ݺ<EFBFBD><DDBA>Ǿ<EFBFBD><C7BE><EFBFBD> <20><>
|
|||
|
|
footstepSource.Play();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20>ȱ<EFBFBD> <20><><EFBFBD><EFBFBD> <20>Լ<EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
public void StopFootstep()
|
|||
|
|
{
|
|||
|
|
if (footstepSource.isPlaying)
|
|||
|
|
{
|
|||
|
|
footstepSource.Stop(); // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>ؾ<EFBFBD> <20><>!
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|