From c68919858815cdbf031516fbe561c56e4547e421 Mon Sep 17 00:00:00 2001 From: ivan tkachenko Date: Wed, 30 Jul 2025 16:35:55 +0300 Subject: [PATCH] Fix fading out: set pure black at the end --- CHANGELOG.md | 1 + MuzikaGromche/Plugin.cs | 9 ++++----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a13d801..0febe23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ - Added LobbyCompatibility to dependencies to avoid desync issues. - Fixed lyrics not being displayed in some situations. +- Fixed minor visual issue with the fade out effect. ## MuzikaGromche 13.37.911 - Sri Lanka Bus hotfix diff --git a/MuzikaGromche/Plugin.cs b/MuzikaGromche/Plugin.cs index c55595a..b5bec9e 100644 --- a/MuzikaGromche/Plugin.cs +++ b/MuzikaGromche/Plugin.cs @@ -1144,7 +1144,7 @@ namespace MuzikaGromche private SetLightsColorEvent? GetColorEvent(BeatTimeSpan loopOffsetSpan, BeatTimestamp windUpOffsetTimestamp) { - if (FadeOut(loopOffsetSpan) is { } colorEvent1) + if (FadeOut(loopOffsetSpan, windUpOffsetTimestamp) is { } colorEvent1) { return colorEvent1; } @@ -1157,15 +1157,14 @@ namespace MuzikaGromche return null; } - private SetLightsColorTransitionEvent? FadeOut(BeatTimeSpan loopOffsetSpan) + private SetLightsColorTransitionEvent? FadeOut(BeatTimeSpan loopOffsetSpan, BeatTimestamp windUpOffsetTimestamp) { - var beat = loopOffsetSpan.BeatToInclusive; var fadeOutStart = track.FadeOutBeat; var fadeOutEnd = fadeOutStart + track.FadeOutDuration; - if (track.FadeOutBeat < beat && beat <= fadeOutEnd) + if (windUpOffsetTimestamp.Beat < 0f && track.FadeOutBeat < loopOffsetSpan.BeatToInclusive && loopOffsetSpan.BeatFromExclusive <= fadeOutEnd) { - var t = (beat - track.FadeOutBeat) / track.FadeOutDuration; + var t = (loopOffsetSpan.BeatToInclusive - track.FadeOutBeat) / track.FadeOutDuration; return new SetLightsColorTransitionEvent(Color.white, Color.black, Easing.Linear, t); } else