#include "music.nvgt" // Resume paused menu music when possible, otherwise start a new track. void menu_music_resume_or_play(music_manager& inout manager, const string track, const int fadeInMs = 0) { if (manager.resume(fadeInMs)) { return; } if (manager.playing) { // Normalize state before fading back up. manager.pause(0, true); manager.resume(fadeInMs); return; } manager.play(track); } // Pause menu music. Blocking is enabled by default so fade-out fully completes. bool menu_music_pause(music_manager& inout manager, const int fadeOutMs = 0, const bool blocking = true) { if (!manager.playing) { return false; } return manager.pause(fadeOutMs, blocking); } // Stop menu music and reset playback state. void menu_music_stop(music_manager& inout manager, const int fadeOutMs = 0, const bool blocking = false) { manager.stop(fadeOutMs, blocking); }