private void loadSamples() { if (Samples != null) { RemoveInternal(Samples); Samples = null; } var samples = GetSamples().ToArray(); if (samples.Length <= 0) { return; } if (HitObject.SampleControlPoint == null) { throw new InvalidOperationException($"{nameof(HitObject)}s must always have an attached {nameof(HitObject.SampleControlPoint)}." + $" This is an indication that {nameof(HitObject.ApplyDefaults)} has not been invoked on {this}."); } Samples = new SkinnableSound(samples.Select(s => HitObject.SampleControlPoint.ApplyTo(s))); Samples.AddAdjustment(AdjustableProperty.Balance, balanceAdjust); AddInternal(Samples); }
public DrawableBreak(SentakkiHitObject hitObject) : base(hitObject) { AddRangeInternal(new Drawable[] { breakSound = new SkinnableSound(new SampleInfo("Break")) }); breakSound.AddAdjustment(AdjustableProperty.Balance, balanceAdjust); }