osu/osu.Game.Rulesets.Mania/Judgements/ManiaJudgement.cs

59 lines
1.8 KiB
C#
Raw Normal View History

2017-03-15 12:32:47 +00:00
// Copyright (c) 2007-2017 ppy Pty Ltd <contact@ppy.sh>.
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
2017-04-18 07:05:58 +00:00
using osu.Game.Rulesets.Judgements;
2017-05-26 10:22:17 +00:00
using osu.Game.Rulesets.Objects.Drawables;
2017-04-18 07:05:58 +00:00
namespace osu.Game.Rulesets.Mania.Judgements
{
public class ManiaJudgement : Judgement
{
2017-05-26 10:22:17 +00:00
/// <summary>
/// The maximum result value for the accuracy portion of the score.
/// </summary>
2017-09-05 10:44:59 +00:00
public int MaxNumericAccuracyResult => NumericResultForAccuracy(HitResult.Perfect);
2017-09-05 10:44:59 +00:00
protected override int NumericResultFor(HitResult result)
2017-05-26 10:22:17 +00:00
{
switch (result)
{
default:
return 0;
2017-09-05 10:44:59 +00:00
case HitResult.Meh:
2017-05-26 10:22:17 +00:00
return 50;
2017-09-05 10:44:59 +00:00
case HitResult.Ok:
2017-05-26 10:22:17 +00:00
return 100;
2017-09-05 10:44:59 +00:00
case HitResult.Good:
2017-05-26 10:22:17 +00:00
return 200;
2017-09-05 10:44:59 +00:00
case HitResult.Great:
case HitResult.Perfect:
2017-05-26 10:22:17 +00:00
return 300;
}
}
2017-09-05 10:44:59 +00:00
public int NumericAccuracyResult => NumericResultForAccuracy(Result);
/// <summary>
/// The result value for the accuracy portion of the score.
/// </summary>
protected virtual int NumericResultForAccuracy(HitResult result)
2017-05-26 10:22:17 +00:00
{
switch (result)
{
default:
return 0;
2017-09-05 10:44:59 +00:00
case HitResult.Meh:
2017-05-26 10:22:17 +00:00
return 50;
2017-09-05 10:44:59 +00:00
case HitResult.Ok:
2017-05-26 10:22:17 +00:00
return 100;
2017-09-05 10:44:59 +00:00
case HitResult.Good:
2017-05-26 10:22:17 +00:00
return 200;
2017-09-05 10:44:59 +00:00
case HitResult.Great:
2017-05-26 10:22:17 +00:00
return 300;
2017-09-05 10:44:59 +00:00
case HitResult.Perfect:
2017-05-26 10:22:17 +00:00
return 305;
}
}
}
}