summaryrefslogtreecommitdiff
path: root/music_gui.c
diff options
context:
space:
mode:
authortron <tron@openttd.org>2004-11-06 23:20:12 +0000
committertron <tron@openttd.org>2004-11-06 23:20:12 +0000
commit476dfd9f1275e2f601ef751d0b2036bbc7209139 (patch)
tree2cb834b1fc8b04b1ae72023a98cb10ee6750bb8d /music_gui.c
parent9c1aa0b75fcce1aab0b2fb86230b9dc175483a88 (diff)
downloadopenttd-476dfd9f1275e2f601ef751d0b2036bbc7209139.tar.xz
(svn r517) -Fix: [1033947] Wrong mapping between music titles and songs
Diffstat (limited to 'music_gui.c')
-rw-r--r--music_gui.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/music_gui.c b/music_gui.c
index 212fd67c8..773f0fc73 100644
--- a/music_gui.c
+++ b/music_gui.c
@@ -34,6 +34,32 @@ static byte * const _playlists[] = {
msf.custom_2,
};
+// Map the order of the song names to the numbers of the midi filenames
+static const int midi_idx[] = {
+ 0, // Tycoon DELUXE Theme
+ 2, // Easy Driver
+ 3, // Little Red Diesel
+ 17, // Cruise Control
+ 7, // Don't Walk!
+ 9, // Fell Apart On Me
+ 4, // City Groove
+ 19, // Funk Central
+ 6, // Stoke It
+ 12, // Road Hog
+ 5, // Aliens Ate My Railway
+ 1, // Snarl Up
+ 18, // Stroll On
+ 10, // Can't Get There From Here
+ 8, // Sawyer's Tune
+ 13, // Hold That Train!
+ 21, // Movin' On
+ 15, // Goss Groove
+ 16, // Small Town
+ 14, // Broomer's Oil Rag
+ 20, // Jammit
+ 11 // Hard Drivin'
+};
+
static void SkipToPrevSong()
{
@@ -82,7 +108,8 @@ static void MusicVolumeChanged(byte new_vol)
static void DoPlaySong()
{
char filename[256];
- sprintf(filename, "%sgm_tt%.2d.gm", _path.gm_dir, _music_wnd_cursong - 1);
+ snprintf(filename, sizeof(filename), "%sgm_tt%.2d.gm",
+ _path.gm_dir, midi_idx[_music_wnd_cursong - 1]);
_music_driver->play_song(filename);
}