From 6d3a73c5409b9beae54023a246a9b68e90f7c351 Mon Sep 17 00:00:00 2001 From: Misa Date: Fri, 2 Apr 2021 12:07:19 -0700 Subject: [PATCH] Add pause(), pauseef(), and resumeef() to musicclass musicclass already had a resume() function for music. These are just wrappers around the appropriate SDL_mixer functions, to avoid direct function calls to the mixer API. So if we ever need to do something with all callers of pausing and resuming in the future, or we switch to a different audio backend, the work is already done for us. Also it just looks cleaner to be calling our musicclass function instead of doing a direct API call to the mixer. --- desktop_version/src/Music.cpp | 15 +++++++++++++++ desktop_version/src/Music.h | 3 +++ 2 files changed, 18 insertions(+) diff --git a/desktop_version/src/Music.cpp b/desktop_version/src/Music.cpp index 94306310..bff2d3ff 100644 --- a/desktop_version/src/Music.cpp +++ b/desktop_version/src/Music.cpp @@ -264,6 +264,11 @@ void musicclass::fadein(void) resume(3000); // 3000 ms fadein } +void musicclass::pause(void) +{ + Mix_PauseMusic(); +} + void musicclass::haltdasmusik(void) { Mix_HaltMusic(); @@ -391,3 +396,13 @@ void musicclass::playef(int t) fprintf(stderr, "Unable to play WAV file: %s\n", Mix_GetError()); } } + +void musicclass::pauseef(void) +{ + Mix_Pause(-1); +} + +void musicclass::resumeef(void) +{ + Mix_Resume(-1); +} diff --git a/desktop_version/src/Music.h b/desktop_version/src/Music.h index 70594a37..28b2914d 100644 --- a/desktop_version/src/Music.h +++ b/desktop_version/src/Music.h @@ -17,6 +17,7 @@ public: void play(int t, const double position_sec = 0.0, const int fadein_ms = 3000); void resume(const int fadein_ms = 0); + void pause(void); void haltdasmusik(void); void silencedasmusik(void); void setfadeamount(const int fade_ms); @@ -33,6 +34,8 @@ public: int resumesong; void playef(int t); + void pauseef(void); + void resumeef(void); std::vector soundTracks; std::vector musicTracks;