Make random generator a field to avoid passing around internally

This commit is contained in:
Dean Herbert 2021-05-26 16:37:30 +09:00
parent 6181b1ac92
commit 6ca9b37c28
1 changed files with 4 additions and 4 deletions

View File

@ -40,6 +40,8 @@ public class OsuModRandom : ModRandom, IApplicableToBeatmap
private static readonly float playfield_diagonal = OsuPlayfield.BASE_SIZE.LengthFast;
private Random rng;
[SettingSource("Seed", "Use a custom seed instead of a random one", SettingControlType = typeof(OsuModRandomSettingsControl))]
public Bindable<int?> Seed { get; } = new Bindable<int?>
{
@ -56,7 +58,7 @@ public void ApplyToBeatmap(IBeatmap beatmap)
Seed.Value ??= RNG.Next();
var rng = new Random((int)Seed.Value);
rng = new Random((int)Seed.Value);
RandomObjectInfo prevObjectInfo = null;
@ -83,9 +85,7 @@ public void ApplyToBeatmap(IBeatmap beatmap)
continue;
}
applyRandomisation(
rng,
rateOfChangeMultiplier,
applyRandomisation(rateOfChangeMultiplier,
prevObjectInfo,
distanceToPrev,
currentObjectInfo