fix: Metronome may get a null AudioSystem.Instance.
This commit is contained in:
@@ -9,11 +9,16 @@ namespace OCES
|
||||
/// </summary>
|
||||
public class Metronome : MonoBehaviour
|
||||
{
|
||||
bool m_isRegistered;
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
AudioSystem.Instance.OnBeat += OnBeat;
|
||||
AudioSystem.Instance.OnBar += OnBar;
|
||||
AudioSystem.Instance.OnGrid += OnGrid;
|
||||
if (AudioSystem.Instance != null) RegisterCallBack();
|
||||
}
|
||||
|
||||
void Start()
|
||||
{
|
||||
if (!this.m_isRegistered) RegisterCallBack();
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
@@ -21,6 +26,14 @@ namespace OCES
|
||||
AudioSystem.Instance.OnBeat -= OnBeat;
|
||||
AudioSystem.Instance.OnBar -= OnBar;
|
||||
AudioSystem.Instance.OnGrid -= OnGrid;
|
||||
this.m_isRegistered = true;
|
||||
}
|
||||
|
||||
void RegisterCallBack()
|
||||
{
|
||||
AudioSystem.Instance.OnBeat += OnBeat;
|
||||
AudioSystem.Instance.OnBar += OnBar;
|
||||
AudioSystem.Instance.OnGrid += OnGrid;
|
||||
}
|
||||
|
||||
static void OnBeat(uint containerId)
|
||||
|
||||
Reference in New Issue
Block a user