public override void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { base.ApplyDefaults(timing, difficulty); ControlPoint overridePoint; ControlPoint timingPoint = timing.TimingPointAt(StartTime, out overridePoint); var velocityAdjustment = overridePoint?.VelocityAdjustment ?? 1; var baseVelocity = 100 * difficulty.SliderMultiplier / velocityAdjustment; Velocity = baseVelocity / timingPoint.BeatLength; TickDistance = baseVelocity / difficulty.SliderTickRate; }
public override void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { base.ApplyDefaults(timing, difficulty); PreEmpt = 600 / (timing.SliderVelocityAt(StartTime) * difficulty.SliderMultiplier) * 1000; ControlPoint overridePoint; Kiai = timing.TimingPointAt(StartTime, out overridePoint).KiaiMode; if (overridePoint != null) { Kiai |= overridePoint.KiaiMode; } }
public override void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { base.ApplyDefaults(timing, difficulty); ScrollTime = scroll_time * (timing.BeatLengthAt(StartTime) * timing.SpeedMultiplierAt(StartTime) / 1000) / difficulty.SliderMultiplier; ControlPoint overridePoint; Kiai = timing.TimingPointAt(StartTime, out overridePoint).KiaiMode; if (overridePoint != null) { Kiai |= overridePoint.KiaiMode; } }
/// <summary> /// Applies default values to this HitObject. /// </summary> /// <param name="difficulty">The difficulty settings to use.</param> /// <param name="timing">The timing settings to use.</param> public virtual void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { ControlPoint overridePoint; ControlPoint timingPoint = timing.TimingPointAt(StartTime, out overridePoint); ControlPoint samplePoint = overridePoint ?? timingPoint; // Initialize first sample Samples.ForEach(s => initializeSampleInfo(s, samplePoint)); // Initialize any repeat samples var repeatData = this as IHasRepeats; repeatData?.RepeatSamples?.ForEach(r => r.ForEach(s => initializeSampleInfo(s, samplePoint))); }
public override void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { base.ApplyDefaults(timing, difficulty); PreEmpt = 600 / (timing.SliderVelocityAt(StartTime) * difficulty.SliderMultiplier) * 1000; ControlPoint overridePoint; Kiai = timing.TimingPointAt(StartTime, out overridePoint).KiaiMode; if (overridePoint != null) { Kiai |= overridePoint.KiaiMode; } HitWindowGreat = BeatmapDifficulty.DifficultyRange(difficulty.OverallDifficulty, 50, 35, 20); HitWindowGood = BeatmapDifficulty.DifficultyRange(difficulty.OverallDifficulty, 120, 80, 50); HitWindowMiss = BeatmapDifficulty.DifficultyRange(difficulty.OverallDifficulty, 135, 95, 70); }
/// <summary> /// Applies default values to this HitObject. /// </summary> /// <param name="difficulty">The difficulty settings to use.</param> /// <param name="timing">The timing settings to use.</param> public virtual void ApplyDefaults(TimingInfo timing, BeatmapDifficulty difficulty) { ControlPoint overridePoint; ControlPoint timingPoint = timing.TimingPointAt(StartTime, out overridePoint); foreach (var sample in Samples) { if (sample.Volume == 0) { sample.Volume = (overridePoint ?? timingPoint)?.SampleVolume ?? 0; } // If the bank is not assigned a name, assign it from the control point if (!string.IsNullOrEmpty(sample.Bank)) { continue; } sample.Bank = (overridePoint ?? timingPoint)?.SampleBank ?? @"normal"; } }