1
0
Fork 0
mirror of https://github.com/ppy/osu-tools.git synced 2025-06-09 09:35:15 +09:00

get rid of redundant slider accuracy check

This commit is contained in:
minisbett 2024-10-18 22:54:34 +02:00
parent 46761bb4f6
commit 389e0f6721
No known key found for this signature in database
GPG key ID: 2DB6D529C95A0403
2 changed files with 5 additions and 6 deletions

View file

@ -104,11 +104,11 @@ namespace PerformanceCalculatorGUI
return (int)Math.Round(1000000 * scoreMultiplier);
}
public static Dictionary<HitResult, int> GenerateHitResultsForRuleset(RulesetInfo ruleset, bool hasSliderAccuracy, double accuracy, IBeatmap beatmap, int countMiss, int? countMeh, int? countGood, int countLargeTickMisses, int countSliderTailMisses)
public static Dictionary<HitResult, int> GenerateHitResultsForRuleset(RulesetInfo ruleset, double accuracy, IBeatmap beatmap, int countMiss, int? countMeh, int? countGood, int countLargeTickMisses, int countSliderTailMisses)
{
return ruleset.OnlineID switch
{
0 => generateOsuHitResults(accuracy, hasSliderAccuracy, beatmap, countMiss, countMeh, countGood, countLargeTickMisses, countSliderTailMisses),
0 => generateOsuHitResults(accuracy, beatmap, countMiss, countMeh, countGood, countLargeTickMisses, countSliderTailMisses),
1 => generateTaikoHitResults(accuracy, beatmap, countMiss, countGood),
2 => generateCatchHitResults(accuracy, beatmap, countMiss, countMeh, countGood),
3 => generateManiaHitResults(accuracy, beatmap, countMiss),
@ -116,7 +116,7 @@ namespace PerformanceCalculatorGUI
};
}
private static Dictionary<HitResult, int> generateOsuHitResults(double accuracy, bool hasSliderAccuracy, IBeatmap beatmap, int countMiss, int? countMeh, int? countGood, int countLargeTickMisses, int countSliderTailMisses)
private static Dictionary<HitResult, int> generateOsuHitResults(double accuracy, IBeatmap beatmap, int countMiss, int? countMeh, int? countGood, int countLargeTickMisses, int countSliderTailMisses)
{
int countGreat;
@ -200,7 +200,7 @@ namespace PerformanceCalculatorGUI
{ HitResult.Ok, countGood ?? 0 },
{ HitResult.Meh, countMeh ?? 0 },
{ HitResult.LargeTickMiss, countLargeTickMisses },
{ hasSliderAccuracy ? HitResult.SliderTailHit : HitResult.SmallTickHit, sliderTailHits },
{ HitResult.SliderTailHit, sliderTailHits },
{ HitResult.Miss, countMiss }
};
}

View file

@ -675,8 +675,7 @@ namespace PerformanceCalculatorGUI.Screens
if (ruleset.Value.OnlineID != -1)
{
// official rulesets can generate more precise hits from accuracy
bool hasSliderAccuracy = !appliedMods.Value.OfType<OsuModClassic>().All(m => m.NoSliderHeadAccuracy.Value);
statistics = RulesetHelper.GenerateHitResultsForRuleset(ruleset.Value, hasSliderAccuracy, accuracyTextBox.Value.Value / 100.0, beatmap, missesTextBox.Value.Value, countMeh, countGood, largeTickMissesTextBox.Value.Value, sliderTailMissesTextBox.Value.Value);
statistics = RulesetHelper.GenerateHitResultsForRuleset(ruleset.Value, accuracyTextBox.Value.Value / 100.0, beatmap, missesTextBox.Value.Value, countMeh, countGood, largeTickMissesTextBox.Value.Value, sliderTailMissesTextBox.Value.Value);
accuracy = RulesetHelper.GetAccuracyForRuleset(ruleset.Value, statistics);
}