// 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); } } }