mirror of
https://github.com/ppy/osu.git
synced 2025-02-13 11:12:54 +08:00
Simplify rewind handling
This commit is contained in:
parent
947f4e0d4c
commit
7f2ae694cc
@ -253,25 +253,26 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
|
||||
int spins = (int)(Disc.CumulativeRotation / 360);
|
||||
|
||||
if (spins < wholeSpins)
|
||||
{
|
||||
// rewinding, silently handle
|
||||
wholeSpins = spins;
|
||||
return;
|
||||
}
|
||||
|
||||
while (wholeSpins != spins)
|
||||
{
|
||||
if (wholeSpins < spins)
|
||||
{
|
||||
var tick = ticks.FirstOrDefault(t => !t.IsHit);
|
||||
var tick = ticks.FirstOrDefault(t => !t.IsHit);
|
||||
|
||||
if (tick != null)
|
||||
{
|
||||
tick.TriggerResult(HitResult.Great);
|
||||
if (tick is DrawableSpinnerBonusTick)
|
||||
bonusDisplay.SetBonusCount(spins - Spinner.SpinsRequired);
|
||||
}
|
||||
|
||||
wholeSpins++;
|
||||
}
|
||||
else
|
||||
// tick may be null if we've hit the spin limit.
|
||||
if (tick != null)
|
||||
{
|
||||
wholeSpins--;
|
||||
tick.TriggerResult(HitResult.Great);
|
||||
if (tick is DrawableSpinnerBonusTick)
|
||||
bonusDisplay.SetBonusCount(spins - Spinner.SpinsRequired);
|
||||
}
|
||||
|
||||
wholeSpins++;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user