mirror of
https://github.com/ppy/osu.git
synced 2025-01-12 18:23:04 +08:00
Merge pull request #29512 from peppy/toolbar-pp-change-weird
Fix toolbar PP change showing `+0` instead of `0`
This commit is contained in:
commit
a32a817305
@ -97,6 +97,7 @@ namespace osu.Game.Tests.Visual.Menus
|
|||||||
public void TestTransientUserStatisticsDisplay()
|
public void TestTransientUserStatisticsDisplay()
|
||||||
{
|
{
|
||||||
AddStep("Log in", () => dummyAPI.Login("wang", "jang"));
|
AddStep("Log in", () => dummyAPI.Login("wang", "jang"));
|
||||||
|
|
||||||
AddStep("Gain", () =>
|
AddStep("Gain", () =>
|
||||||
{
|
{
|
||||||
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
@ -113,6 +114,7 @@ namespace osu.Game.Tests.Visual.Menus
|
|||||||
PP = 1357
|
PP = 1357
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
AddStep("Loss", () =>
|
AddStep("Loss", () =>
|
||||||
{
|
{
|
||||||
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
@ -129,7 +131,9 @@ namespace osu.Game.Tests.Visual.Menus
|
|||||||
PP = 1234
|
PP = 1234
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
AddStep("No change", () =>
|
|
||||||
|
// Tests flooring logic works as expected.
|
||||||
|
AddStep("Tiny increase in PP", () =>
|
||||||
{
|
{
|
||||||
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
transientUpdateDisplay.LatestUpdate.Value = new UserStatisticsUpdate(
|
transientUpdateDisplay.LatestUpdate.Value = new UserStatisticsUpdate(
|
||||||
@ -137,14 +141,32 @@ namespace osu.Game.Tests.Visual.Menus
|
|||||||
new UserStatistics
|
new UserStatistics
|
||||||
{
|
{
|
||||||
GlobalRank = 111_111,
|
GlobalRank = 111_111,
|
||||||
PP = 1357
|
PP = 1357.6m
|
||||||
},
|
},
|
||||||
new UserStatistics
|
new UserStatistics
|
||||||
{
|
{
|
||||||
GlobalRank = 111_111,
|
GlobalRank = 111_111,
|
||||||
PP = 1357
|
PP = 1358.1m
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
AddStep("No change 1", () =>
|
||||||
|
{
|
||||||
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
|
transientUpdateDisplay.LatestUpdate.Value = new UserStatisticsUpdate(
|
||||||
|
new ScoreInfo(),
|
||||||
|
new UserStatistics
|
||||||
|
{
|
||||||
|
GlobalRank = 111_111,
|
||||||
|
PP = 1357m
|
||||||
|
},
|
||||||
|
new UserStatistics
|
||||||
|
{
|
||||||
|
GlobalRank = 111_111,
|
||||||
|
PP = 1357.1m
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
AddStep("Was null", () =>
|
AddStep("Was null", () =>
|
||||||
{
|
{
|
||||||
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
@ -161,6 +183,7 @@ namespace osu.Game.Tests.Visual.Menus
|
|||||||
PP = 1357
|
PP = 1357
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
AddStep("Became null", () =>
|
AddStep("Became null", () =>
|
||||||
{
|
{
|
||||||
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
var transientUpdateDisplay = this.ChildrenOfType<TransientUserStatisticsUpdateDisplay>().Single();
|
||||||
|
@ -24,7 +24,7 @@ namespace osu.Game.Overlays.Toolbar
|
|||||||
public Bindable<UserStatisticsUpdate?> LatestUpdate { get; } = new Bindable<UserStatisticsUpdate?>();
|
public Bindable<UserStatisticsUpdate?> LatestUpdate { get; } = new Bindable<UserStatisticsUpdate?>();
|
||||||
|
|
||||||
private Statistic<int> globalRank = null!;
|
private Statistic<int> globalRank = null!;
|
||||||
private Statistic<decimal> pp = null!;
|
private Statistic<int> pp = null!;
|
||||||
|
|
||||||
[BackgroundDependencyLoader]
|
[BackgroundDependencyLoader]
|
||||||
private void load(UserStatisticsWatcher? userStatisticsWatcher)
|
private void load(UserStatisticsWatcher? userStatisticsWatcher)
|
||||||
@ -43,7 +43,7 @@ namespace osu.Game.Overlays.Toolbar
|
|||||||
Children = new Drawable[]
|
Children = new Drawable[]
|
||||||
{
|
{
|
||||||
globalRank = new Statistic<int>(UsersStrings.ShowRankGlobalSimple, @"#", Comparer<int>.Create((before, after) => before - after)),
|
globalRank = new Statistic<int>(UsersStrings.ShowRankGlobalSimple, @"#", Comparer<int>.Create((before, after) => before - after)),
|
||||||
pp = new Statistic<decimal>(RankingsStrings.StatPerformance, string.Empty, Comparer<decimal>.Create((before, after) => Math.Sign(after - before))),
|
pp = new Statistic<int>(RankingsStrings.StatPerformance, string.Empty, Comparer<int>.Create((before, after) => Math.Sign(after - before))),
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -83,7 +83,7 @@ namespace osu.Game.Overlays.Toolbar
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (update.After.PP != null)
|
if (update.After.PP != null)
|
||||||
pp.Display(update.Before.PP ?? update.After.PP.Value, Math.Abs((update.After.PP - update.Before.PP) ?? 0M), update.After.PP.Value);
|
pp.Display((int)(update.Before.PP ?? update.After.PP.Value), (int)Math.Abs(((int?)update.After.PP - (int?)update.Before.PP) ?? 0M), (int)update.After.PP.Value);
|
||||||
|
|
||||||
this.Delay(5000).FadeOut(500, Easing.OutQuint);
|
this.Delay(5000).FadeOut(500, Easing.OutQuint);
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user