feat: add PlayOnTrigger for music-synced audio playback
- Add PlayOnTrigger method to AudioSystem for scheduling audio playback on music sync events (beat/bar/grid) - Rename ButtonInvoker to SetStateBind for better clarity - Update PlaySoundBind to support both direct playback and trigger-based playback with callback flags - Add CallbackFlags enum (MusicSyncBeat, MusicSyncBar, MusicSyncGrid) - Update Metronome demo to use new callback flag naming convention - Add test audio file sfx_notice_test.wav - Update scene UI to demonstrate PlayOnTrigger functionality
This commit is contained in:
@@ -2,16 +2,23 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using OCES.Audio;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class PlaySoundBind : MonoBehaviour
|
||||
{
|
||||
|
||||
public CallbackFlags callbackFlags;
|
||||
public InputField inputField;
|
||||
|
||||
public void OnButtonPressed()
|
||||
public void PlaySound()
|
||||
{
|
||||
uint.TryParse(this.inputField.text, out uint hapticId);
|
||||
AudioSystem.Instance.Play(hapticId);
|
||||
uint.TryParse(this.inputField.text, out uint audioId);
|
||||
AudioSystem.Instance.Play(audioId);
|
||||
}
|
||||
|
||||
public void PlaySoundOnTrigger()
|
||||
{
|
||||
uint.TryParse(this.inputField.text, out uint audioId);
|
||||
AudioSystem.Instance.PlayOnTrigger(audioId, this.callbackFlags);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user