Basically matching the old code more closely to avoid too much precision from doing math in a slightly different way.
LegacyDifficultyControlPoint
SliderVelocity
SliderVelocityMultiplier
Velocity
FastRandom
LegacyRandom
osu.Game
Change IHasRepeats.NodeSamples to IList from List
var
BaseDifficulty
Beatmap<T>
BeatmapDifficulty
IBeatmapDifficultyInfo
PatternGenerator.isValid
EffectControlPoint
DifficultyPointAt
MathF-functions are faster than the Math-counterpart and it looks cleaner, so use MathF when we cast to float or int anyway.