1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-14 20:32:55 +08:00

Use exact ratio of legacy to default object size

This commit is contained in:
Dean Herbert 2019-12-18 15:39:36 +09:00
parent 1fe0e45a9c
commit 826b271371
2 changed files with 4 additions and 3 deletions

View File

@ -4,6 +4,7 @@
using System; using System;
using osu.Framework.Extensions.Color4Extensions; using osu.Framework.Extensions.Color4Extensions;
using osu.Framework.MathUtils; using osu.Framework.MathUtils;
using osu.Game.Rulesets.Osu.Objects;
using osu.Game.Rulesets.Osu.Objects.Drawables.Pieces; using osu.Game.Rulesets.Osu.Objects.Drawables.Pieces;
using osuTK.Graphics; using osuTK.Graphics;
@ -15,7 +16,7 @@ namespace osu.Game.Rulesets.Osu.Skinning
private class LegacyDrawableSliderPath : DrawableSliderPath private class LegacyDrawableSliderPath : DrawableSliderPath
{ {
private const float shadow_portion = 0.06f; private const float shadow_portion = 1 - (OsuLegacySkinTransformer.LEGACY_CIRCLE_RADIUS / OsuHitObject.OBJECT_RADIUS);
public new Color4 AccentColour => new Color4(base.AccentColour.R, base.AccentColour.G, base.AccentColour.B, base.AccentColour.A * 0.70f); public new Color4 AccentColour => new Color4(base.AccentColour.R, base.AccentColour.G, base.AccentColour.B, base.AccentColour.A * 0.70f);

View File

@ -23,7 +23,7 @@ namespace osu.Game.Rulesets.Osu.Skinning
/// Their hittable area is 128px, but the actual circle portion is 118px. /// Their hittable area is 128px, but the actual circle portion is 118px.
/// We must account for some gameplay elements such as slider bodies, where this padding is not present. /// We must account for some gameplay elements such as slider bodies, where this padding is not present.
/// </summary> /// </summary>
private const float legacy_circle_radius = 64 - 5; public const float LEGACY_CIRCLE_RADIUS = 64 - 5;
public OsuLegacySkinTransformer(ISkinSource source) public OsuLegacySkinTransformer(ISkinSource source)
{ {
@ -130,7 +130,7 @@ namespace osu.Game.Rulesets.Osu.Skinning
{ {
case OsuSkinConfiguration.SliderPathRadius: case OsuSkinConfiguration.SliderPathRadius:
if (hasHitCircle.Value) if (hasHitCircle.Value)
return SkinUtils.As<TValue>(new BindableFloat(legacy_circle_radius)); return SkinUtils.As<TValue>(new BindableFloat(LEGACY_CIRCLE_RADIUS));
break; break;
} }