Skip to content

Commit 2590ca4

Browse files
committed
Start SoundBank_PlayMusic
1 parent e7899c2 commit 2590ca4

File tree

2 files changed

+35
-8
lines changed

2 files changed

+35
-8
lines changed

include/ty/soundbank.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@
55
#include "ty/GameObject.h"
66

77
enum MusicType {
8+
MUSIC_TYPE_0 = 0,
9+
MUSIC_TYPE_1 = 1,
10+
MUSIC_TYPE_2 = 2,
11+
MUSIC_TYPE_3 = 3,
12+
MUSIC_TYPE_4 = 4,
13+
MUSIC_TYPE_5 = 5,
14+
MUSIC_TYPE_6 = 6,
815
MUSIC_TYPE_7 = 7,
916
};
1017

src/ty/source/soundbank.cpp

Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -133,36 +133,56 @@ void SoundBank_PlayMusic(MusicType type, float f1, float f2) {
133133
static char buffer[32];
134134

135135
switch (type) {
136-
case 0:
136+
case MUSIC_TYPE_0:
137+
break;
138+
case MUSIC_TYPE_1:
137139
sprintf(buffer, "music_%s%s", gb.level.GetID(), gb.level.IsBossEnabled() ? "_boss" : "");
138140
break;
139-
case 1:
141+
case MUSIC_TYPE_2:
140142
sprintf(buffer, Str_Printf("music_frontend_%s", Translation_GetLanguageCode(Translation_GetLanguage())));
141143
break;
142-
case 2:
144+
case MUSIC_TYPE_3:
143145
sprintf(buffer, "music_%s_mb", gb.level.GetID());
144146
break;
145-
case 3:
147+
case MUSIC_TYPE_4:
146148
sprintf(buffer, "music_%s_mg", gb.level.GetID());
147149
break;
148-
case 4:
150+
case MUSIC_TYPE_5:
149151
sprintf(buffer, "music_%s_ta", gb.level.GetID());
150152
break;
151-
case 5:
153+
case MUSIC_TYPE_7:
152154
if (Translation_GetLanguage() == LANGUAGE_ENGLISH || Translation_GetLanguage() == Language_American) {
153155
sprintf(buffer, "music_credits");
154156
} else {
155157
sprintf(buffer, "music_credits_le");
156158
}
157159
break;
158-
case 6:
160+
case MUSIC_TYPE_6:
159161
break;
160-
case 7:
162+
default:
161163
return;
162164
}
163165

164166
soundEventManager.unk48 = NULL;
165167

168+
if (f2 > 0.0f) {
169+
soundEventManager.unk48 = buffer;
170+
171+
soundEventManager.unk18 = 3;
172+
173+
soundEventManager.fader.Fade(FaderObject::FADEMODE_7, f1, f2, 0.0f, true);
174+
175+
return;
176+
} else if (f1 > 0.0f) {
177+
soundEventManager.unk18 = 1;
178+
179+
soundEventManager.fader.Fade(FaderObject::FADEMODE_1, f1, 0.0f, 0.0f, true);
180+
} else {
181+
soundEventManager.unk18 = 0;
182+
183+
SoundBank_SetVolume(1.0f, 3);
184+
}
185+
166186
Sound_MusicStop();
167187
Sound_MusicPlay(buffer, 1, 0);
168188
SoundBank_SetVolume(1.0f, 3);

0 commit comments

Comments
 (0)