Add debug-only config for lyrics time series
This commit is contained in:
parent
118eecbb59
commit
2229fa3545
|
@ -531,7 +531,13 @@ namespace MuzikaGromche
|
|||
}
|
||||
}
|
||||
|
||||
public float[] LyricsTimeSeries { get; private set; }
|
||||
public float[] _LyricsTimeSeries = null;
|
||||
public float[] LyricsTimeSeries
|
||||
{
|
||||
get => Config.LyricsTimeSeriesOverride ?? _LyricsTimeSeries;
|
||||
private set => _LyricsTimeSeries = value;
|
||||
}
|
||||
|
||||
public string[] LyricsLines { get; private set; }
|
||||
public (float, string)[] Lyrics
|
||||
{
|
||||
|
@ -888,9 +894,9 @@ namespace MuzikaGromche
|
|||
if (Config.DisplayLyrics.Value)
|
||||
{
|
||||
var index = loopOffsetSpan.GetLastIndex(track.LyricsTimeSeries);
|
||||
if (index != null)
|
||||
if (index is int i && i < track.LyricsLines.Length)
|
||||
{
|
||||
var text = track.LyricsLines[(int)index];
|
||||
var text = track.LyricsLines[i];
|
||||
events.Add(new LyricsEvent(text));
|
||||
}
|
||||
}
|
||||
|
@ -1169,6 +1175,7 @@ namespace MuzikaGromche
|
|||
public static float? FadeOutBeatOverride { get; private set; } = null;
|
||||
public static float? FadeOutDurationOverride { get; private set; } = null;
|
||||
public static float[] FlickerLightsTimeSeriesOverride { get; private set; } = null;
|
||||
public static float[] LyricsTimeSeriesOverride { get; private set; } = null;
|
||||
public static float? BeatsOffsetOverride { get; private set; } = null;
|
||||
public static float? ColorTransitionInOverride { get; private set; } = null;
|
||||
public static float? ColorTransitionOutOverride { get; private set; } = null;
|
||||
|
@ -1374,6 +1381,7 @@ namespace MuzikaGromche
|
|||
SyncedEntry<float> fadeOutBeatSyncedEntry = null;
|
||||
SyncedEntry<float> fadeOutDurationSyncedEntry = null;
|
||||
SyncedEntry<string> flickerLightsTimeSeriesSyncedEntry = null;
|
||||
SyncedEntry<string> lyricsTimeSeriesSyncedEntry = null;
|
||||
SyncedEntry<float> beatsOffsetSyncedEntry = null;
|
||||
SyncedEntry<float> colorTransitionInSyncedEntry = null;
|
||||
SyncedEntry<float> colorTransitionOutSyncedEntry = null;
|
||||
|
@ -1395,8 +1403,10 @@ namespace MuzikaGromche
|
|||
new ConfigDescription("The beat at which to start fading out", new AcceptableValueRange<float>(-1000f, 0)));
|
||||
fadeOutDurationSyncedEntry = configFile.BindSyncedEntry(section, "Fade Out Duration", 0f,
|
||||
new ConfigDescription("Duration of fading out", new AcceptableValueRange<float>(0, 100)));
|
||||
flickerLightsTimeSeriesSyncedEntry = configFile.BindSyncedEntry(section, "Flicker Lights", "",
|
||||
new ConfigDescription("Time series of beat offsets when to flicker the lights"));
|
||||
flickerLightsTimeSeriesSyncedEntry = configFile.BindSyncedEntry(section, "Flicker Lights Time Series", "",
|
||||
new ConfigDescription("Time series of beat offsets when to flicker the lights."));
|
||||
lyricsTimeSeriesSyncedEntry = configFile.BindSyncedEntry(section, "Lyrics Time Series", "",
|
||||
new ConfigDescription("Time series of beat offsets when to show lyrics lines."));
|
||||
beatsOffsetSyncedEntry = configFile.BindSyncedEntry(section, "Beats Offset", 0f,
|
||||
new ConfigDescription("How much to offset the whole beat. More is later", new AcceptableValueRange<float>(-0.5f, 0.5f)));
|
||||
colorTransitionInSyncedEntry = configFile.BindSyncedEntry(section, "Color Transition In", 0.25f,
|
||||
|
@ -1410,6 +1420,7 @@ namespace MuzikaGromche
|
|||
LethalConfigManager.AddConfigItem(new FloatSliderConfigItem(fadeOutBeatSyncedEntry.Entry, floatSliderOptions));
|
||||
LethalConfigManager.AddConfigItem(new FloatSliderConfigItem(fadeOutDurationSyncedEntry.Entry, floatSliderOptions));
|
||||
LethalConfigManager.AddConfigItem(new TextInputFieldConfigItem(flickerLightsTimeSeriesSyncedEntry.Entry, Default(new TextInputFieldOptions())));
|
||||
LethalConfigManager.AddConfigItem(new TextInputFieldConfigItem(lyricsTimeSeriesSyncedEntry.Entry, Default(new TextInputFieldOptions())));
|
||||
LethalConfigManager.AddConfigItem(new FloatSliderConfigItem(beatsOffsetSyncedEntry.Entry, floatSliderOptions));
|
||||
LethalConfigManager.AddConfigItem(new FloatSliderConfigItem(colorTransitionInSyncedEntry.Entry, floatSliderOptions));
|
||||
LethalConfigManager.AddConfigItem(new FloatSliderConfigItem(colorTransitionOutSyncedEntry.Entry, floatSliderOptions));
|
||||
|
@ -1418,6 +1429,7 @@ namespace MuzikaGromche
|
|||
registerStruct(fadeOutBeatSyncedEntry, t => t._FadeOutBeat, x => FadeOutBeatOverride = x);
|
||||
registerStruct(fadeOutDurationSyncedEntry, t => t._FadeOutDuration, x => FadeOutDurationOverride = x);
|
||||
registerArray(flickerLightsTimeSeriesSyncedEntry, t => t._FlickerLightsTimeSeries, xs => FlickerLightsTimeSeriesOverride = xs, float.Parse, sort: true);
|
||||
registerArray(lyricsTimeSeriesSyncedEntry, t => t._LyricsTimeSeries, xs => LyricsTimeSeriesOverride = xs, float.Parse, sort: true);
|
||||
registerStruct(beatsOffsetSyncedEntry, t => t._BeatsOffset, x => BeatsOffsetOverride = x);
|
||||
registerStruct(colorTransitionInSyncedEntry, t => t._ColorTransitionIn, x => ColorTransitionInOverride = x);
|
||||
registerStruct(colorTransitionOutSyncedEntry, t => t._ColorTransitionOut, x => ColorTransitionOutOverride = x);
|
||||
|
|
Loading…
Reference in New Issue