using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework.Audio;

namespace WindowsGame1
{
    class MyAudio
    {
        AudioEngine ae; // 音效引擎
        WaveBank wb; // Wave 檔案倉庫 (Wave Bank) 
        SoundBank sb; // 聲音倉庫 (Sound Bank)

        Cue bgm; // 背景音樂

        public MyAudio()
        {
            //讀入Content中的檔案
            ae = new AudioEngine("Content\\newProject.xgs");
            wb = new WaveBank(ae, "Content\\Wave Bank.xwb");
            sb = new SoundBank(ae, "Content\\Sound Bank.xsb");

            bgm = sb.GetCue("backdropmusic");
        }

        //播放音效
        public void PlaySound(string name)
        {
            sb.PlayCue(name);
        }

        //暫停背景音樂
        public void PauseBGM()
        {
            if (bgm.IsPlaying)
                bgm.Pause();
        }

        //背景音樂恢復播放
        public void ResumeBGM()
        {
            if (bgm.IsPaused)
                bgm.Resume();
        }

        //播放背景音樂
        public void PlayBgm()
        {
            if (!bgm.IsPlaying)
            {
                bgm = sb.GetCue(bgm.Name);
                bgm.Play();
            }
        }

        //背景音樂是否暫停
        public bool IsBgmPause()
        {
            return bgm.IsPaused;
        }

        // 背景音樂更新
        public void Update()
        {
            if (bgm.IsStopped)
            {
                PlayBgm();
                ae.Update();
            }
        }
    }
}
