1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 22:22:54 +08:00

Fix difficulty calculation when mods are involved

This commit is contained in:
Dan Balasescu 2023-06-08 16:29:34 +09:00
parent 77c745cc94
commit d10c63ed2d

View File

@ -187,12 +187,12 @@ namespace osu.Game.Rulesets.Osu.Difficulty
int objectCount = countNormal + countSlider + countSpinner;
DifficultyPeppyStars = (int)Math.Round(
(playableBeatmap.Difficulty.DrainRate
+ playableBeatmap.Difficulty.OverallDifficulty
+ playableBeatmap.Difficulty.CircleSize
+ Math.Clamp(objectCount / playableBeatmap.Difficulty.DrainRate * 8, 0, 16)) / 38 * 5);
(baseBeatmap.Difficulty.DrainRate
+ baseBeatmap.Difficulty.OverallDifficulty
+ baseBeatmap.Difficulty.CircleSize
+ Math.Clamp(objectCount / baseBeatmap.Difficulty.DrainRate * 8, 0, 16)) / 38 * 5);
ScoreMultiplier = 1 * DifficultyPeppyStars * mods.Aggregate(1.0, (current, mod) => current * mod.ScoreMultiplier);
ScoreMultiplier = DifficultyPeppyStars * mods.Aggregate(1.0, (current, mod) => current * mod.ScoreMultiplier);
}
}