Only bounce and flash notification count when increasing

This commit is contained in:
Dean Herbert
2017-12-26 15:52:36 +09:00
parent 45b3acdd6f
commit 24d8d357d0

View File

@ -59,16 +59,27 @@ namespace osu.Game.Overlays.Toolbar
private class CountCircle : CompositeDrawable private class CountCircle : CompositeDrawable
{ {
private readonly OsuSpriteText count; private readonly OsuSpriteText countText;
private readonly Circle circle; private readonly Circle circle;
private int count;
public int Count public int Count
{ {
get { return count; }
set set
{ {
count.Text = value.ToString("#,0"); if (count == value)
circle.FlashColour(Color4.White, 600, Easing.OutQuint); return;
this.ScaleTo(1.1f).Then().ScaleTo(1, 600, Easing.OutElastic);
if (value > count)
{
circle.FlashColour(Color4.White, 600, Easing.OutQuint);
this.ScaleTo(1.1f).Then().ScaleTo(1, 600, Easing.OutElastic);
}
count = value;
countText.Text = value.ToString("#,0");
} }
} }
@ -83,7 +94,7 @@ namespace osu.Game.Overlays.Toolbar
RelativeSizeAxes = Axes.Both, RelativeSizeAxes = Axes.Both,
Colour = Color4.Red Colour = Color4.Red
}, },
count = new OsuSpriteText countText = new OsuSpriteText
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,