Improve colours and hit metrics on key area

This commit is contained in:
Dean Herbert 2022-10-06 18:07:56 +09:00
parent a543222a2b
commit 59bbbf1c08
2 changed files with 22 additions and 11 deletions

View File

@ -21,6 +21,9 @@ private void load(IScrollingInfo scrollingInfo)
RelativeSizeAxes = Axes.X;
Height = ArgonNotePiece.NOTE_HEIGHT;
Masking = true;
CornerRadius = ArgonNotePiece.CORNER_RADIUS;
InternalChildren = new[]
{
new Box

View File

@ -12,6 +12,7 @@
using osu.Framework.Input.Events;
using osu.Game.Graphics;
using osu.Game.Rulesets.Mania.UI;
using osu.Game.Rulesets.Mania.UI.Components;
using osu.Game.Rulesets.UI.Scrolling;
using osuTK;
using osuTK.Graphics;
@ -53,18 +54,24 @@ private void load(IScrollingInfo scrollingInfo)
Height = Stage.HIT_TARGET_POSITION,
Children = new[]
{
background = new Box
new Container
{
Name = "Key gradient",
Masking = true,
RelativeSizeAxes = Axes.Both,
CornerRadius = ArgonNotePiece.CORNER_RADIUS,
Child = background = new Box
{
Name = "Key gradient",
RelativeSizeAxes = Axes.Both,
},
},
hitTargetLine = new Circle
{
RelativeSizeAxes = Axes.X,
Anchor = Anchor.TopCentre,
Origin = Anchor.Centre,
Origin = Anchor.BottomCentre,
Colour = OsuColour.Gray(196 / 255f),
Height = 4,
Height = ArgonNotePiece.CORNER_RADIUS * 2,
Masking = true,
},
new Container
@ -137,10 +144,11 @@ private void load(IScrollingInfo scrollingInfo)
accentColour = column.AccentColour.GetBoundCopy();
accentColour.BindValueChanged(colour =>
{
background.Colour = colour.NewValue.Darken(0.6f);
bottomIcon.Colour = colour.NewValue;
}, true);
{
background.Colour = colour.NewValue.Darken(1f);
bottomIcon.Colour = colour.NewValue;
},
true);
}
private void onDirectionChanged(ValueChangedEvent<ScrollingDirection> direction)
@ -169,8 +177,8 @@ public bool OnPressed(KeyBindingPressEvent<ManiaAction> e)
Color4 lightingColour = accentColour.Value.Lighten(0.9f);
background
.FadeColour(accentColour.Value.Lighten(0.4f), 40).Then()
.FadeColour(accentColour.Value, 150, Easing.OutQuint);
.FadeColour(accentColour.Value, 40).Then()
.FadeColour(accentColour.Value.Darken(0.4f), 150, Easing.OutQuint);
hitTargetLine.FadeColour(Color4.White, lighting_fade_in_duration, Easing.OutQuint);
hitTargetLine.TransformTo(nameof(EdgeEffect), new EdgeEffectParameters
@ -225,7 +233,7 @@ public void OnReleased(KeyBindingReleaseEvent<ManiaAction> e)
{
Type = EdgeEffectType.Glow,
Colour = lightingColour,
Radius = 30,
Radius = 25,
}, lighting_fade_out_duration, Easing.OutQuint);
bottomIcon.FadeColour(accentColour.Value, lighting_fade_out_duration, Easing.OutQuint);