using UnityEngine; namespace GameFramework { /// /// 音效数据类 —— 封装 AudioClip 和音量。 /// 用于 UI 音效、游戏音效的配置。 /// /// 使用方式: /// 1. 创建 ScriptableObject: Assets → Create → Audio Data /// 2. 设置 AudioClip 和音量 /// 3. 拖到需要播放音效的组件上 /// [CreateAssetMenu(fileName = "NewAudioData", menuName = "GameFramework/Audio Data")] public class AudioData : ScriptableObject { [Header("音效设置")] [Tooltip("音效剪辑")] public AudioClip clip; [Tooltip("音量 (0-1)")] [Range(0f, 1f)] public float volume = 1.0f; [Tooltip("是否循环播放")] public bool loop = false; /// /// 播放此音效 /// public void Play(AudioSource source) { if (source == null || clip == null) return; source.loop = loop; source.volume = volume; if (loop) { source.clip = clip; source.Play(); } else { source.PlayOneShot(clip, volume); } } } }