mirror of
https://github.com/ppy/osu.git
synced 2025-01-26 16:12:54 +08:00
Design improvements
paired with smoogi
This commit is contained in:
parent
4100c4fe9f
commit
e3ae2bca6d
@ -26,6 +26,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
private readonly SpinnerBackground background;
|
||||
private readonly Container circleContainer;
|
||||
private readonly CirclePiece circle;
|
||||
private readonly GlowPiece glow;
|
||||
|
||||
private readonly TextAwesome symbol;
|
||||
|
||||
@ -42,7 +43,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
RelativeSizeAxes = Axes.Both;
|
||||
|
||||
// we are slightly bigger than our parent, to clip the top and bottom of the circle
|
||||
Height = 1.2f;
|
||||
Height = 1.3f;
|
||||
|
||||
spinner = s;
|
||||
|
||||
@ -55,6 +56,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
Origin = Anchor.Centre,
|
||||
Children = new Drawable[]
|
||||
{
|
||||
glow = new GlowPiece(),
|
||||
circle = new CirclePiece
|
||||
{
|
||||
Position = Vector2.Zero,
|
||||
@ -69,7 +71,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
TextSize = 48,
|
||||
Icon = FontAwesome.fa_asterisk,
|
||||
Shadow = false,
|
||||
}
|
||||
},
|
||||
}
|
||||
},
|
||||
mainContainer = new AspectContainer
|
||||
@ -81,7 +83,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
{
|
||||
background = new SpinnerBackground
|
||||
{
|
||||
Alpha = 0.2f,
|
||||
Alpha = 0.6f,
|
||||
Anchor = Anchor.Centre,
|
||||
Origin = Anchor.Centre,
|
||||
},
|
||||
@ -112,9 +114,15 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
{
|
||||
disc.Complete = true;
|
||||
|
||||
disc.FadeAccent(completeColour, 500);
|
||||
background.FadeAccent(completeColour, 500);
|
||||
circle.FadeColour(completeColour, 500);
|
||||
const float duration = 200;
|
||||
|
||||
disc.FadeAccent(completeColour, duration);
|
||||
|
||||
background.FadeAccent(completeColour, duration);
|
||||
background.FadeOut(duration);
|
||||
|
||||
circle.FadeColour(completeColour, duration);
|
||||
glow.FadeColour(completeColour, duration);
|
||||
}
|
||||
|
||||
if (!userTriggered && Time.Current >= spinner.EndTime)
|
||||
@ -146,12 +154,14 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables
|
||||
[BackgroundDependencyLoader]
|
||||
private void load(OsuColour colours)
|
||||
{
|
||||
normalColour = colours.BlueDark;
|
||||
completeColour = colours.YellowLight.Opacity(0.8f);
|
||||
normalColour = colours.SpinnerFill;
|
||||
background.AccentColour = colours.SpinnerBackground;
|
||||
|
||||
completeColour = colours.YellowLight.Opacity(0.6f);
|
||||
|
||||
disc.AccentColour = normalColour;
|
||||
background.AccentColour = normalColour;
|
||||
circle.Colour = normalColour;
|
||||
circle.Colour = colours.BlueDarker;
|
||||
glow.Colour = colours.BlueDarker;
|
||||
}
|
||||
|
||||
protected override void UpdateAfterChildren()
|
||||
|
@ -2,7 +2,6 @@
|
||||
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||
|
||||
using OpenTK.Graphics;
|
||||
using osu.Framework.Allocation;
|
||||
using osu.Framework.Extensions.Color4Extensions;
|
||||
using osu.Framework.Graphics;
|
||||
using osu.Framework.Graphics.Containers;
|
||||
@ -15,12 +14,25 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Pieces
|
||||
{
|
||||
public override bool HandleInput => false;
|
||||
|
||||
protected Sprite Disc;
|
||||
protected Box Disc;
|
||||
|
||||
public Color4 AccentColour
|
||||
{
|
||||
get { return Disc.Colour; }
|
||||
set { Disc.Colour = value; }
|
||||
get
|
||||
{
|
||||
return Disc.Colour;
|
||||
}
|
||||
set
|
||||
{
|
||||
Disc.Colour = value;
|
||||
|
||||
EdgeEffect = new EdgeEffect
|
||||
{
|
||||
Type = EdgeEffectType.Glow,
|
||||
Radius = 14,
|
||||
Colour = value.Opacity(0.3f),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public SpinnerBackground()
|
||||
@ -39,16 +51,5 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Pieces
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
[BackgroundDependencyLoader]
|
||||
private void load(OsuColour colours)
|
||||
{
|
||||
EdgeEffect = new EdgeEffect
|
||||
{
|
||||
Type = EdgeEffectType.Glow,
|
||||
Radius = 14,
|
||||
Colour = colours.BlueLight.Opacity(0.3f),
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -24,8 +24,8 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Pieces
|
||||
|
||||
private readonly SpinnerBackground background;
|
||||
|
||||
private const float idle_alpha = 0.1f;
|
||||
private const float tracking_alpha = 0.3f;
|
||||
private const float idle_alpha = 0.2f;
|
||||
private const float tracking_alpha = 0.4f;
|
||||
|
||||
public SpinnerDisc(Spinner s)
|
||||
{
|
||||
@ -127,9 +127,9 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Pieces
|
||||
if (Complete && updateCompleteTick())
|
||||
{
|
||||
background.Flush(flushType: typeof(TransformAlpha));
|
||||
background.FadeTo(0.75f, 60, EasingTypes.OutExpo);
|
||||
background.FadeTo(tracking_alpha + 0.4f, 60, EasingTypes.OutExpo);
|
||||
background.Delay(60);
|
||||
background.FadeTo(0.5f, 250, EasingTypes.OutQuint);
|
||||
background.FadeTo(tracking_alpha, 250, EasingTypes.OutQuint);
|
||||
}
|
||||
|
||||
RotateTo(currentRotation / 2, validAndTracking ? 500 : 1500, EasingTypes.OutExpo);
|
||||
|
@ -53,8 +53,8 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Pieces
|
||||
Size = new Vector2(60, 10),
|
||||
Origin = Anchor.Centre,
|
||||
Position = new Vector2(
|
||||
0.5f + (float)Math.Sin((float)i / count * 2 * MathHelper.Pi) / 2 * 0.9f,
|
||||
0.5f + (float)Math.Cos((float)i / count * 2 * MathHelper.Pi) / 2 * 0.9f
|
||||
0.5f + (float)Math.Sin((float)i / count * 2 * MathHelper.Pi) / 2 * 0.86f,
|
||||
0.5f + (float)Math.Cos((float)i / count * 2 * MathHelper.Pi) / 2 * 0.86f
|
||||
),
|
||||
Rotation = -(float)i / count * 360 + 90,
|
||||
Children = new[]
|
||||
|
@ -87,5 +87,8 @@ namespace osu.Game.Graphics
|
||||
public readonly Color4 RedDarker = FromHex(@"870000");
|
||||
|
||||
public readonly Color4 ChatBlue = FromHex(@"17292e");
|
||||
|
||||
public readonly Color4 SpinnerBackground = FromHex(@"05222b");
|
||||
public readonly Color4 SpinnerFill = FromHex(@"002c3c");
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user