mirror of
https://github.com/ppy/osu.git
synced 2025-02-15 13:22:57 +08:00
Fix icon orientation for horizontal bar hit error meter
This commit is contained in:
parent
1e09f558d1
commit
7267602b95
@ -33,6 +33,8 @@ namespace osu.Game.Screens.Play.HUD.HitErrorMeters
|
||||
private const float chevron_size = 8;
|
||||
|
||||
private SpriteIcon arrow;
|
||||
private SpriteIcon iconEarly;
|
||||
private SpriteIcon iconLate;
|
||||
|
||||
private Container colourBarsEarly;
|
||||
private Container colourBarsLate;
|
||||
@ -97,25 +99,21 @@ namespace osu.Game.Screens.Play.HUD.HitErrorMeters
|
||||
RelativeSizeAxes = Axes.Both,
|
||||
Height = 0.5f,
|
||||
},
|
||||
new SpriteIcon
|
||||
iconEarly = new SpriteIcon
|
||||
{
|
||||
Y = -10,
|
||||
Size = new Vector2(10),
|
||||
Icon = FontAwesome.Solid.ShippingFast,
|
||||
Anchor = Anchor.TopCentre,
|
||||
Origin = Anchor.Centre,
|
||||
// undo any layout rotation to display the icon the correct orientation
|
||||
Rotation = -Rotation,
|
||||
},
|
||||
new SpriteIcon
|
||||
iconLate = new SpriteIcon
|
||||
{
|
||||
Y = 10,
|
||||
Size = new Vector2(10),
|
||||
Icon = FontAwesome.Solid.Bicycle,
|
||||
Anchor = Anchor.BottomCentre,
|
||||
Origin = Anchor.Centre,
|
||||
// undo any layout rotation to display the icon the correct orientation
|
||||
Rotation = -Rotation,
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -130,6 +128,7 @@ namespace osu.Game.Screens.Play.HUD.HitErrorMeters
|
||||
};
|
||||
|
||||
createColourBars(colours);
|
||||
OrientIcons();
|
||||
}
|
||||
|
||||
protected override void LoadComplete()
|
||||
@ -143,6 +142,15 @@ namespace osu.Game.Screens.Play.HUD.HitErrorMeters
|
||||
arrow.Delay(200).FadeInFromZero(600);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Method to undo any layout rotation to display icons in the correct orientation.
|
||||
/// </summary>
|
||||
public void OrientIcons()
|
||||
{
|
||||
iconEarly.Rotation = -Rotation;
|
||||
iconLate.Rotation = -Rotation;
|
||||
}
|
||||
|
||||
private void createColourBars(OsuColour colours)
|
||||
{
|
||||
var windows = HitWindows.GetAllAvailableWindows().ToArray();
|
||||
|
@ -376,6 +376,7 @@ namespace osu.Game.Skinning
|
||||
hitError.Anchor = Anchor.BottomCentre;
|
||||
hitError.Origin = Anchor.CentreLeft;
|
||||
hitError.Rotation = -90;
|
||||
if (hitError is BarHitErrorMeter barHitError) barHitError.OrientIcons();
|
||||
}
|
||||
|
||||
if (songProgress != null)
|
||||
|
Loading…
Reference in New Issue
Block a user