using UnityEngine; using UnityEngine.EventSystems; namespace GameFramework { /// /// UI 事件音效触发器。 /// 挂到按钮上,鼠标悬停/选中时播放 selectSFX,点击/提交时播放 submitSFX。 /// public class UIEventTrigger : MonoBehaviour, IPointerEnterHandler, IPointerDownHandler, ISelectHandler, ISubmitHandler { [SerializeField] AudioData selectSFX; [SerializeField] AudioData submitSFX; public void OnPointerEnter(PointerEventData eventData) { PlaySFX(selectSFX); } public void OnPointerDown(PointerEventData eventData) { PlaySFX(submitSFX); } public void OnSelect(BaseEventData eventData) { PlaySFX(selectSFX); } public void OnSubmit(BaseEventData eventData) { PlaySFX(submitSFX); } void PlaySFX(AudioData data) { if (AudioManager.Instance != null && data != null) AudioManager.Instance.PlaySFX(data); } } }