Fix regressions in combo counters and tidy up naming of SpriteTexts.

This commit is contained in:
Dean Herbert
2016-11-19 16:19:54 +09:00
parent 1242ae3f2a
commit acb85d0140
6 changed files with 38 additions and 43 deletions

View File

@ -53,7 +53,6 @@ namespace osu.Desktop.VisualTests.Tests
Origin = Anchor.BottomLeft, Origin = Anchor.BottomLeft,
Anchor = Anchor.BottomLeft, Anchor = Anchor.BottomLeft,
Margin = new MarginPadding(10), Margin = new MarginPadding(10),
InnerCountMargin = new MarginPadding(10),
Count = 0, Count = 0,
TextSize = 40, TextSize = 40,
}; };

View File

@ -43,8 +43,8 @@ namespace osu.Game.Modes.Osu.Objects.Drawables
protected override void LoadComplete() protected override void LoadComplete()
{ {
base.LoadComplete(); base.LoadComplete();
line1.TransformSpacingTo(14, 1800, EasingTypes.OutQuint); line1.TransformSpacingTo(0.7f, 1800, EasingTypes.OutQuint);
line2.TransformSpacingTo(14, 1800, EasingTypes.OutQuint); line2.TransformSpacingTo(0.7f, 1800, EasingTypes.OutQuint);
} }
} }
} }

View File

@ -17,24 +17,14 @@ namespace osu.Game.Modes.Osu.UI
protected virtual float PopOutSmallScale => 1.1f; protected virtual float PopOutSmallScale => 1.1f;
protected virtual bool CanPopOutWhileRolling => false; protected virtual bool CanPopOutWhileRolling => false;
public MarginPadding InnerCountMargin public Vector2 PopOutScale = new Vector2(2.5f);
{
get
{
return DisplayedCountSpriteText.Margin;
}
set
{
DisplayedCountSpriteText.Margin = value;
}
}
public OsuComboCounter() protected override void LoadComplete()
{ {
PopOutSpriteText.Origin = Origin; base.LoadComplete();
PopOutSpriteText.Anchor = Anchor;
Add(PopOutSpriteText); PopOutCount.Origin = Origin;
PopOutCount.Anchor = Anchor;
} }
protected override string FormatCount(ulong count) protected override string FormatCount(ulong count)
@ -44,15 +34,15 @@ namespace osu.Game.Modes.Osu.UI
protected virtual void TransformPopOut(ulong newValue) protected virtual void TransformPopOut(ulong newValue)
{ {
PopOutSpriteText.Text = FormatCount(newValue); PopOutCount.Text = FormatCount(newValue);
PopOutSpriteText.ScaleTo(PopOutScale); PopOutCount.ScaleTo(PopOutScale);
PopOutSpriteText.FadeTo(PopOutInitialAlpha); PopOutCount.FadeTo(PopOutInitialAlpha);
PopOutSpriteText.MoveTo(Vector2.Zero); PopOutCount.MoveTo(Vector2.Zero);
PopOutSpriteText.ScaleTo(1, PopOutDuration, PopOutEasing); PopOutCount.ScaleTo(1, PopOutDuration, PopOutEasing);
PopOutSpriteText.FadeOut(PopOutDuration, PopOutEasing); PopOutCount.FadeOut(PopOutDuration, PopOutEasing);
PopOutSpriteText.MoveTo(DisplayedCountSpriteText.Position, PopOutDuration, PopOutEasing); PopOutCount.MoveTo(DisplayedCountSpriteText.Position, PopOutDuration, PopOutEasing);
} }
protected virtual void TransformPopOutRolling(ulong newValue) protected virtual void TransformPopOutRolling(ulong newValue)

View File

@ -40,7 +40,7 @@ namespace osu.Game.Modes.Catch.UI
{ {
if (!IsRolling) if (!IsRolling)
{ {
PopOutSpriteText.Colour = DisplayedCountSpriteText.Colour; PopOutCount.Colour = DisplayedCountSpriteText.Colour;
FadeOut(FadeOutDuration); FadeOut(FadeOutDuration);
} }
base.OnCountRolling(currentValue, newValue); base.OnCountRolling(currentValue, newValue);
@ -58,7 +58,7 @@ namespace osu.Game.Modes.Catch.UI
/// <param name="colour">Last grabbed fruit colour.</param> /// <param name="colour">Last grabbed fruit colour.</param>
public void CatchFruit(Color4 colour) public void CatchFruit(Color4 colour)
{ {
PopOutSpriteText.Colour = colour; PopOutCount.Colour = colour;
Count++; Count++;
} }
} }

View File

@ -29,9 +29,9 @@ namespace osu.Game.Modes.Mania.UI
{ {
base.LoadComplete(); base.LoadComplete();
PopOutSpriteText.Anchor = Anchor.BottomCentre; PopOutCount.Anchor = Anchor.BottomCentre;
PopOutSpriteText.Origin = Anchor.Centre; PopOutCount.Origin = Anchor.Centre;
PopOutSpriteText.FadeColour(PopOutColor, 0); PopOutCount.FadeColour(PopOutColor, 0);
OriginalColour = DisplayedCountSpriteText.Colour; OriginalColour = DisplayedCountSpriteText.Colour;
} }
@ -39,13 +39,13 @@ namespace osu.Game.Modes.Mania.UI
{ {
if (!IsRolling && newValue < currentValue) if (!IsRolling && newValue < currentValue)
{ {
PopOutSpriteText.Text = FormatCount(currentValue); PopOutCount.Text = FormatCount(currentValue);
PopOutSpriteText.FadeTo(PopOutInitialAlpha); PopOutCount.FadeTo(PopOutInitialAlpha);
PopOutSpriteText.ScaleTo(1.0f); PopOutCount.ScaleTo(1.0f);
PopOutSpriteText.FadeOut(PopOutDuration, PopOutEasing); PopOutCount.FadeOut(PopOutDuration, PopOutEasing);
PopOutSpriteText.ScaleTo(PopOutScale, PopOutDuration, PopOutEasing); PopOutCount.ScaleTo(PopOutScale, PopOutDuration, PopOutEasing);
} }
base.OnCountRolling(currentValue, newValue); base.OnCountRolling(currentValue, newValue);

View File

@ -3,6 +3,7 @@
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Primitives;
using osu.Framework.Graphics.Sprites; using osu.Framework.Graphics.Sprites;
using osu.Framework.Graphics.Transformations; using osu.Framework.Graphics.Transformations;
using osu.Framework.MathUtils; using osu.Framework.MathUtils;
@ -16,7 +17,7 @@ namespace osu.Game.Modes.UI
get; protected set; get; protected set;
} }
protected SpriteText PopOutSpriteText; protected SpriteText PopOutCount;
protected virtual double PopOutDuration => 150; protected virtual double PopOutDuration => 150;
protected virtual float PopOutScale => 2.0f; protected virtual float PopOutScale => 2.0f;
@ -86,7 +87,7 @@ namespace osu.Game.Modes.UI
{ {
textSize = value; textSize = value;
DisplayedCountSpriteText.TextSize = TextSize; DisplayedCountSpriteText.TextSize = TextSize;
PopOutSpriteText.TextSize = TextSize; PopOutCount.TextSize = TextSize;
} }
} }
@ -103,13 +104,19 @@ namespace osu.Game.Modes.UI
{ {
Alpha = 0, Alpha = 0,
}, },
PopOutSpriteText = new SpriteText PopOutCount = new SpriteText
{ {
Alpha = 0, Alpha = 0,
Margin = new MarginPadding(0.05f),
} }
}; };
TextSize = 80; TextSize = 80;
}
protected override void LoadComplete()
{
base.LoadComplete();
DisplayedCountSpriteText.Text = FormatCount(Count); DisplayedCountSpriteText.Text = FormatCount(Count);
DisplayedCountSpriteText.Anchor = Anchor; DisplayedCountSpriteText.Anchor = Anchor;
@ -192,13 +199,12 @@ namespace osu.Game.Modes.UI
private void updateCount(ulong value, bool rolling = false) private void updateCount(ulong value, bool rolling = false)
{ {
ulong prevCount = count;
count = value; count = value;
if (!IsLoaded) if (!IsLoaded)
return; return;
ulong prevCount = count;
if (!rolling) if (!rolling)
{ {
Flush(false, typeof(TransformComboRoll)); Flush(false, typeof(TransformComboRoll));