Skip to content

Commit 0cde178

Browse files
committed
Speed-based Music Param Trigger: don't apply changes if there is no change to apply
Breaks the music getting muted after collecting a level ending heart.
1 parent c74a184 commit 0cde178

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

Triggers/SpeedBasedMusicParamTrigger.cs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,19 @@ public static void Unload() {
1616
private static void onPlayerUpdate(On.Celeste.Player.orig_Update orig, Player self) {
1717
orig(self);
1818

19-
AudioState audio = self.SceneAs<Level>().Session.Audio;
20-
float playerSpeed = self.Speed.Length();
19+
if (SpringCollab2020Module.Instance.Session.ActiveSpeedBasedMusicParams.Count > 0) {
20+
AudioState audio = self.SceneAs<Level>().Session.Audio;
21+
float playerSpeed = self.Speed.Length();
2122

22-
// set all the speed-based music params to their corresponding values.
23-
foreach (KeyValuePair<string, SpringCollab2020Session.SpeedBasedMusicParamInfo> musicParam
24-
in SpringCollab2020Module.Instance.Session.ActiveSpeedBasedMusicParams) {
23+
// set all the speed-based music params to their corresponding values.
24+
foreach (KeyValuePair<string, SpringCollab2020Session.SpeedBasedMusicParamInfo> musicParam
25+
in SpringCollab2020Module.Instance.Session.ActiveSpeedBasedMusicParams) {
2526

26-
audio.Music.Param(musicParam.Key, MathHelper.Clamp(playerSpeed, musicParam.Value.MinimumSpeed, musicParam.Value.MaximumSpeed));
27-
}
27+
audio.Music.Param(musicParam.Key, MathHelper.Clamp(playerSpeed, musicParam.Value.MinimumSpeed, musicParam.Value.MaximumSpeed));
28+
}
2829

29-
audio.Apply();
30+
audio.Apply();
31+
}
3032
}
3133

3234
private string paramName;

0 commit comments

Comments
 (0)