1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 16:12:57 +08:00

Add Color4.Opacity and OsuColor.Gray

This commit is contained in:
Drew DeVault 2017-01-10 13:44:40 -05:00
parent 70ecf48ca7
commit c222be05c0
13 changed files with 27 additions and 19 deletions

View File

@ -6,6 +6,11 @@ namespace osu.Game.Graphics
{ {
public static class OsuColor public static class OsuColor
{ {
public static Color4 Opacity(this Color4 color, float a) => new Color4(color.R, color.G, color.B, a);
public static Color4 Opacity(this Color4 color, byte a) => new Color4(color.R, color.G, color.B, a / 255f);
public static Color4 Gray(float amt) => new Color4(amt, amt, amt, 1f);
public static Color4 Gray(byte amt) => new Color4(amt, amt, amt, 255);
public static readonly Color4 OsuPink = new Color4(255, 102, 170, 255); public static readonly Color4 OsuPink = new Color4(255, 102, 170, 255);
public static readonly Color4 BeatmapPanelUnselected = new Color4(20, 43, 51, 255); public static readonly Color4 BeatmapPanelUnselected = new Color4(20, 43, 51, 255);

View File

@ -151,7 +151,7 @@ namespace osu.Game.Graphics.UserInterface
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Shear = new Vector2(shear, 0), Shear = new Vector2(shear, 0),
Colour = new Color4(255, 255, 255, 128), Colour = Color4.White.Opacity(0.5f),
}; };
Add(flash); Add(flash);

View File

@ -13,6 +13,7 @@ using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Sprites; using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Transformations; using osu.Framework.Graphics.Transformations;
using osu.Framework.Threading; using osu.Framework.Threading;
using osu.Game.Graphics;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.API.Requests; using osu.Game.Online.API.Requests;
using osu.Game.Online.Chat; using osu.Game.Online.Chat;
@ -45,7 +46,7 @@ namespace osu.Game.Overlays
{ {
Depth = float.MaxValue, Depth = float.MaxValue,
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = new Color4(0.1f, 0.1f, 0.1f, 0.4f), Colour = OsuColor.Gray(0.1f).Opacity(0.4f),
}, },
content = new Container content = new Container
{ {

View File

@ -56,7 +56,7 @@ namespace osu.Game.Overlays
EdgeEffect = new EdgeEffect EdgeEffect = new EdgeEffect
{ {
Type = EdgeEffectType.Shadow, Type = EdgeEffectType.Shadow,
Colour = new Color4(0, 0, 0, 40), Colour = Color4.Black.Opacity(40),
Radius = 5, Radius = 5,
}; };
@ -402,7 +402,7 @@ namespace osu.Game.Overlays
Height = 50, Height = 50,
Origin = Anchor.BottomCentre, Origin = Anchor.BottomCentre,
Anchor = Anchor.BottomCentre, Anchor = Anchor.BottomCentre,
Colour = new Color4(0, 0, 0, 127) Colour = Color4.Black.Opacity(0.5f)
} }
}; };
} }

View File

@ -111,8 +111,7 @@ namespace osu.Game.Overlays.Options
{ {
new Box new Box
{ {
Colour = new Color4(OsuColor.SliderbarNub.R, Colour = OsuColor.SliderbarNub.Opacity(0),
OsuColor.SliderbarNub.G, OsuColor.SliderbarNub.B, 0),
RelativeSizeAxes = Axes.Both RelativeSizeAxes = Axes.Both
} }
} }

View File

@ -66,7 +66,7 @@ namespace osu.Game.Overlays.Toolbar
solidBackground = new Box solidBackground = new Box
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = new Color4(0.1f, 0.1f, 0.1f, 1), Colour = OsuColor.Gray(0.1f),
Alpha = alpha_normal, Alpha = alpha_normal,
}, },
gradientBackground = new Box gradientBackground = new Box
@ -75,7 +75,8 @@ namespace osu.Game.Overlays.Toolbar
Anchor = Anchor.BottomLeft, Anchor = Anchor.BottomLeft,
Alpha = 0, Alpha = 0,
Height = 90, Height = 90,
ColourInfo = ColourInfo.GradientVertical(new Color4(0.1f, 0.1f, 0.1f, 0.5f), new Color4(0.1f, 0.1f, 0.1f, 0f)), ColourInfo = ColourInfo.GradientVertical(
OsuColor.Gray(0.1f).Opacity(0.5f), OsuColor.Gray(0.1f).Opacity(0)),
}, },
new FlowContainer new FlowContainer
{ {

View File

@ -70,7 +70,7 @@ namespace osu.Game.Overlays.Toolbar
HoverBackground = new Box HoverBackground = new Box
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = new Color4(80, 80, 80, 180), Colour = OsuColor.Gray(80).Opacity(180),
BlendingMode = BlendingMode.Additive, BlendingMode = BlendingMode.Additive,
Alpha = 0, Alpha = 0,
}, },
@ -144,7 +144,7 @@ namespace osu.Game.Overlays.Toolbar
{ {
Action?.Invoke(); Action?.Invoke();
sampleClick.Play(); sampleClick.Play();
HoverBackground.FlashColour(new Color4(255, 255, 255, 100), 500, EasingTypes.OutQuint); HoverBackground.FlashColour(Color4.White.Opacity(100), 500, EasingTypes.OutQuint);
return true; return true;
} }
@ -174,7 +174,7 @@ namespace osu.Game.Overlays.Toolbar
new Box new Box
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = new Color4(30, 30, 30, 255) Colour = OsuColor.Gray(30)
}, },
new Triangles new Triangles
{ {

View File

@ -17,6 +17,7 @@ using osu.Game.Configuration;
using osu.Game.Online.API; using osu.Game.Online.API;
using OpenTK; using OpenTK;
using OpenTK.Graphics; using OpenTK.Graphics;
using osu.Game.Graphics;
namespace osu.Game.Overlays.Toolbar namespace osu.Game.Overlays.Toolbar
{ {
@ -41,7 +42,7 @@ namespace osu.Game.Overlays.Toolbar
Add(StateBackground = new Box Add(StateBackground = new Box
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = new Color4(150, 150, 150, 180), Colour = OsuColor.Gray(150).Opacity(180),
BlendingMode = BlendingMode.Additive, BlendingMode = BlendingMode.Additive,
Depth = 2, Depth = 2,
Alpha = 0, Alpha = 0,

View File

@ -16,6 +16,7 @@ using osu.Game.Configuration;
using osu.Game.Online.API; using osu.Game.Online.API;
using OpenTK; using OpenTK;
using OpenTK.Graphics; using OpenTK.Graphics;
using osu.Game.Graphics;
namespace osu.Game.Overlays.Toolbar namespace osu.Game.Overlays.Toolbar
{ {
@ -73,7 +74,7 @@ namespace osu.Game.Overlays.Toolbar
{ {
Type = EdgeEffectType.Shadow, Type = EdgeEffectType.Shadow,
Radius = 4, Radius = 4,
Colour = new Color4(0, 0, 0, 0.1f), Colour = Color4.Black.Opacity(0.1f),
}; };
Masking = true; Masking = true;

View File

@ -64,7 +64,7 @@ namespace osu.Game.Screens.Menu
EdgeEffect = new EdgeEffect EdgeEffect = new EdgeEffect
{ {
Type = EdgeEffectType.Shadow, Type = EdgeEffectType.Shadow,
Colour = new Color4(0, 0, 0, 0.2f), Colour = Color4.Black.Opacity(0.2f),
Roundness = 5, Roundness = 5,
Radius = 8, Radius = 8,
}, },

View File

@ -72,7 +72,7 @@ namespace osu.Game.Screens.Menu
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Size = new Vector2(2, 1), Size = new Vector2(2, 1),
Colour = new Color4(50, 50, 50, 255), Colour = OsuColor.Gray(50),
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,
}, },

View File

@ -81,7 +81,7 @@ namespace osu.Game.Screens.Select
new Container new Container
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
ColourInfo = ColourInfo.GradientVertical(Color4.White, new Color4(1f, 1f, 1f, 0.3f)), ColourInfo = ColourInfo.GradientVertical(Color4.White, Color4.White.Opacity(0.3f)),
Children = new [] Children = new []
{ {
// Zoomed-in and cropped beatmap background // Zoomed-in and cropped beatmap background

View File

@ -63,7 +63,7 @@ namespace osu.Game.Screens.Select
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Size = new Vector2(1, 0.5f), Size = new Vector2(1, 0.5f),
Colour = new Color4(0, 0, 0, 0.5f), Colour = Color4.Black.Opacity(0.5f),
Shear = new Vector2(0.15f, 0), Shear = new Vector2(0.15f, 0),
EdgeSmoothness = new Vector2(2, 0), EdgeSmoothness = new Vector2(2, 0),
}, },
@ -73,7 +73,7 @@ namespace osu.Game.Screens.Select
RelativePositionAxes = Axes.Y, RelativePositionAxes = Axes.Y,
Size = new Vector2(1, -0.5f), Size = new Vector2(1, -0.5f),
Position = new Vector2(0, 1), Position = new Vector2(0, 1),
Colour = new Color4(0, 0, 0, 0.5f), Colour = Color4.Black.Opacity(0.5f),
Shear = new Vector2(-0.15f, 0), Shear = new Vector2(-0.15f, 0),
EdgeSmoothness = new Vector2(2, 0), EdgeSmoothness = new Vector2(2, 0),
}, },
@ -127,7 +127,7 @@ namespace osu.Game.Screens.Select
{ {
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Size = Vector2.One, Size = Vector2.One,
Colour = new Color4(0, 0, 0, 0.5f), Colour = Color4.Black.Opacity(0.5f),
}, },
new BackButton new BackButton
{ {