Make drum rolls and swells optional with Classic mod

This commit is contained in:
sw1tchbl4d3
2022-06-19 02:10:23 +02:00
parent d0c9788a4a
commit a5bf16e873
10 changed files with 81 additions and 8 deletions

View File

@ -144,7 +144,14 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables
if (countHit >= HitObject.RequiredGoodHits)
{
ApplyResult(r => r.Type = countHit >= HitObject.RequiredGreatHits ? HitResult.Great : HitResult.Ok);
ApplyResult(r =>
{
// With the Classic mod, don't award points for a finished drum roll, only for ticks.
if (r.Judgement.MaxResult == HitResult.LargeBonus)
r.Type = HitResult.IgnoreMiss;
else
r.Type = countHit >= HitObject.RequiredGreatHits ? HitResult.Great : HitResult.Ok;
});
}
else
ApplyResult(r => r.Type = r.Judgement.MinResult);

View File

@ -201,7 +201,7 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables
expandingRing.ScaleTo(1f + Math.Min(target_ring_scale - 1f, (target_ring_scale - 1f) * completion * 1.3f), 260, Easing.OutQuint);
if (numHits == HitObject.RequiredHits)
ApplyResult(r => r.Type = HitResult.Great);
ApplyResult(r => r.Type = r.Judgement.MaxResult);
}
else
{
@ -222,7 +222,14 @@ namespace osu.Game.Rulesets.Taiko.Objects.Drawables
tick.TriggerResult(false);
}
ApplyResult(r => r.Type = numHits > HitObject.RequiredHits / 2 ? HitResult.Ok : r.Judgement.MinResult);
ApplyResult(r =>
{
// With the Classic mod, don't award combo or accuracy for a finished swell.
if (r.Judgement.MaxResult == HitResult.LargeBonus)
r.Type = numHits > HitObject.RequiredHits / 2 ? HitResult.LargeBonus : r.Judgement.MinResult;
else
r.Type = numHits > HitObject.RequiredHits / 2 ? HitResult.Ok : r.Judgement.MinResult;
});
}
}