mirror of
https://github.com/ppy/osu-tools.git
synced 2025-06-10 18:10:46 +09:00
Implemented GetAccuracy override method for Mania simulate command
This commit is contained in:
parent
871512a69e
commit
5903f648f4
1 changed files with 17 additions and 0 deletions
|
@ -98,5 +98,22 @@ namespace PerformanceCalculator.Simulate
|
||||||
{ HitResult.Miss, countMiss }
|
{ HitResult.Miss, countMiss }
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override double GetAccuracy(IBeatmap beatmap, Dictionary<HitResult, int> statistics)
|
||||||
|
{
|
||||||
|
int countPerfect = statistics[HitResult.Perfect];
|
||||||
|
int countGreat = statistics[HitResult.Great];
|
||||||
|
int countGood = statistics[HitResult.Good];
|
||||||
|
int countOk = statistics[HitResult.Ok];
|
||||||
|
int countMeh = statistics[HitResult.Meh];
|
||||||
|
int countMiss = statistics[HitResult.Miss];
|
||||||
|
|
||||||
|
double perfectWeight = Mods != null && Mods.Any(m => m == "CL") ? 300 : 305;
|
||||||
|
|
||||||
|
double total = perfectWeight * countPerfect + 300 * countGreat + 200 * countGood + 100 * countOk + 50 * countMeh;
|
||||||
|
double max = perfectWeight * (countPerfect + countGreat + countGood + countOk + countMeh + countMiss);
|
||||||
|
|
||||||
|
return total / max;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue