mirror of
https://github.com/ppy/osu.git
synced 2026-06-04 21:39:30 +08:00
Fix Hidden mod perfect stacks buff for osu! reading difficulty (#36918)
The `OpacityAt` conditional adds `Preempt` to `StartTime` when the intention is to check for when `previousObj` is hit, which means it should just be `StartTime`. In addition to that, the third conditional's purpose is to ensure that the buff only applies if `currObj` is animating (its opacity is changing from the Hidden mod) when `previousObj` is hit. This restructures it so that it reads more cleanly and communicates its purpose better. [Conversation](https://discord.com/channels/546120878908506119/1374004990875795586/1480886152042119190)
This commit is contained in:
committed by
GitHub
Unverified
parent
de0e2c33c9
commit
e9f59752c9
@@ -131,7 +131,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Evaluators
|
||||
var previousObj = (OsuDifficultyHitObject)currObj.Previous(0);
|
||||
|
||||
// Buff perfect stacks only if current note is completely invisible at the time you click the previous note.
|
||||
if (currObj.LazyJumpDistance == 0 && currObj.OpacityAt(previousObj.BaseObject.StartTime + previousObj.Preempt, true) == 0 && previousObj.StartTime + previousObj.Preempt > currObj.StartTime)
|
||||
if (currObj.LazyJumpDistance == 0 && currObj.OpacityAt(previousObj.BaseObject.StartTime, true) == 0 && previousObj.StartTime > currObj.StartTime - currObj.Preempt)
|
||||
hiddenDifficulty += hidden_multiplier * 2500 / Math.Pow(currObj.AdjustedDeltaTime, 1.5); // Perfect stacks are harder the less time between notes
|
||||
|
||||
return hiddenDifficulty;
|
||||
|
||||
Reference in New Issue
Block a user