예제 #1
0
    // Update is called once per frame
    void Update()
    {
        if (PMC.GetPaused() == false) // avoid cycling song event instance while it's paused
        {
            if (Input.GetKeyDown(KeyCode.LeftBracket))
            {
                songNum--;
                if (songNum < 0)
                {
                    songNum = MusicEventList.Length - 1;
                }
                ChangeSong();
            }
            if (Input.GetKeyDown(KeyCode.RightBracket))
            {
                songNum++;
                if (songNum >= MusicEventList.Length)
                {
                    songNum = 0;
                }
                ChangeSong();
            }
        }

        FMOD.Studio.PLAYBACK_STATE PBState;
        music.getPlaybackState(out PBState);
        stopMusic = PMC.GetPaused();
        if (PBState != FMOD.Studio.PLAYBACK_STATE.PLAYING && manuallyStoppedMusic == false)
        {
            music.start();
            if (stopMusic)
            {
                music.stop(FMOD.Studio.STOP_MODE.IMMEDIATE);
            }
        }
    }