[planetblupi] 02/29: Restore midi playback support and add --restore-midi cli argument

Didier Raboud odyx at moszumanska.debian.org
Tue Jan 2 08:38:40 UTC 2018


This is an automated email from the git hooks/post-receive script.

odyx pushed a commit to branch debian/master
in repository planetblupi.

commit d2bfd12934efc8c1c0645f1cd8d6e33b27516f75
Author: Mathieu Schroeter <mathieu at schroetersa.ch>
Date:   Sun Dec 10 15:29:46 2017 +0100

    Restore midi playback support and add --restore-midi cli argument
    
    - It closes issue #49.
---
 resources/music/music000.mid | Bin 0 -> 131400 bytes
 resources/music/music001.mid | Bin 0 -> 150115 bytes
 resources/music/music002.mid | Bin 0 -> 160403 bytes
 resources/music/music003.mid | Bin 0 -> 90444 bytes
 resources/music/music004.mid | Bin 0 -> 91458 bytes
 resources/music/music005.mid | Bin 0 -> 184644 bytes
 resources/music/music006.mid | Bin 0 -> 97149 bytes
 resources/music/music007.mid | Bin 0 -> 151127 bytes
 resources/music/music008.mid | Bin 0 -> 139355 bytes
 resources/music/music009.mid | Bin 0 -> 191817 bytes
 src/blupi.cxx                |   8 ++++++++
 src/blupi.h                  |   1 +
 src/event.cxx                |  11 ++++++++++-
 13 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/resources/music/music000.mid b/resources/music/music000.mid
new file mode 100644
index 0000000..172145c
Binary files /dev/null and b/resources/music/music000.mid differ
diff --git a/resources/music/music001.mid b/resources/music/music001.mid
new file mode 100644
index 0000000..3a408a2
Binary files /dev/null and b/resources/music/music001.mid differ
diff --git a/resources/music/music002.mid b/resources/music/music002.mid
new file mode 100644
index 0000000..4d29210
Binary files /dev/null and b/resources/music/music002.mid differ
diff --git a/resources/music/music003.mid b/resources/music/music003.mid
new file mode 100644
index 0000000..6bcab72
Binary files /dev/null and b/resources/music/music003.mid differ
diff --git a/resources/music/music004.mid b/resources/music/music004.mid
new file mode 100644
index 0000000..b7d4e38
Binary files /dev/null and b/resources/music/music004.mid differ
diff --git a/resources/music/music005.mid b/resources/music/music005.mid
new file mode 100644
index 0000000..08fba67
Binary files /dev/null and b/resources/music/music005.mid differ
diff --git a/resources/music/music006.mid b/resources/music/music006.mid
new file mode 100644
index 0000000..e511b04
Binary files /dev/null and b/resources/music/music006.mid differ
diff --git a/resources/music/music007.mid b/resources/music/music007.mid
new file mode 100644
index 0000000..f0853ca
Binary files /dev/null and b/resources/music/music007.mid differ
diff --git a/resources/music/music008.mid b/resources/music/music008.mid
new file mode 100644
index 0000000..ee7d6c3
Binary files /dev/null and b/resources/music/music008.mid differ
diff --git a/resources/music/music009.mid b/resources/music/music009.mid
new file mode 100644
index 0000000..fbb4773
Binary files /dev/null and b/resources/music/music009.mid differ
diff --git a/src/blupi.cxx b/src/blupi.cxx
index 238c925..66f019c 100644
--- a/src/blupi.cxx
+++ b/src/blupi.cxx
@@ -70,6 +70,7 @@ int         g_rendererType   = 0;
 bool        g_enableRecorder = false;
 std::string g_playRecord;
 bool        g_restoreBugs = false; // restore original < v1.9 bugs
+bool        g_restoreMidi = false; // restore music playback based on midi files
 
 enum Settings {
   SETTING_FULLSCREEN    = 1 << 0,
@@ -580,6 +581,10 @@ parseArgs (int argc, char * argv[], bool & exit)
      {"restorebugs",
       {"-b", "--restore-bugs"},
       "restore funny original bugs of older versions < v1.9",
+      0},
+     {"restoremidi",
+      {"-m", "--restore-midi"},
+      "restore playback based on MIDI music instead of OGG",
       0}}};
 
   argagg::parser_results args;
@@ -652,6 +657,9 @@ parseArgs (int argc, char * argv[], bool & exit)
   if (args["restorebugs"])
     g_restoreBugs = true;
 
+  if (args["restoremidi"])
+    g_restoreMidi = true;
+
   return EXIT_SUCCESS;
 }
 
diff --git a/src/blupi.h b/src/blupi.h
index 8d4a090..3ed2751 100644
--- a/src/blupi.h
+++ b/src/blupi.h
@@ -30,6 +30,7 @@ extern SDL_Window *   g_window;
 extern SDL_Renderer * g_renderer;
 extern bool           g_bFullScreen;
 extern bool           g_restoreBugs;
+extern bool           g_restoreMidi;
 extern bool           g_enableRecorder;
 extern std::string    g_playRecord;
 
diff --git a/src/event.cxx b/src/event.cxx
index fe88eb8..22ff6f4 100644
--- a/src/event.cxx
+++ b/src/event.cxx
@@ -3362,7 +3362,16 @@ CEvent::ChangePhase (Uint32 phase)
       music = m_pDecor->GetMusic ();
       if (music > 0)
       {
-        filename = string_format ("music/music%.3d.ogg", music - 1);
+        const std::string exts[] = {"ogg", "mid"};
+
+        filename = string_format (
+          "music/music%.3d.%s", music - 1,
+          exts[g_restoreMidi ? 1 : 0].c_str ());
+        if (!FileExists (filename))
+          filename = string_format (
+            "music/music%.3d.%s", music - 1,
+            exts[g_restoreMidi ? 0 : 1].c_str ());
+
         m_pSound->StopMusic ();
         m_pSound->PlayMusic (filename);
       }

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/planetblupi.git



More information about the Pkg-games-commits mailing list